{"id":4960,"date":"2017-09-02T13:34:33","date_gmt":"2017-09-02T04:34:33","guid":{"rendered":"http:\/\/www.gisdeveloper.co.kr\/?p=4960"},"modified":"2020-05-28T14:16:06","modified_gmt":"2020-05-28T05:16:06","slug":"plpgsql%ec%9d%84-%ec%9d%b4%ec%9a%a9%ed%95%9c-%ed%85%8c%ec%9d%b4%eb%b8%94-%ec%97%85%eb%8d%b0%ec%9d%b4%ed%8a%b8update","status":"publish","type":"post","link":"http:\/\/www.gisdeveloper.co.kr\/?p=4960","title":{"rendered":"pl\/pgsql\uc744 \uc774\uc6a9\ud55c \ud14c\uc774\ube14 \uc5c5\ub370\uc774\ud2b8(Update)"},"content":{"rendered":"<p>\uae30\uc874\uc758 \ud14c\uc774\ube14\uc5d0 \uc0c8\ub85c\uc6b4 \ud544\ub4dc\ub97c \ucd94\uac00\ud558\uace0, \uc774 \ud544\ub4dc\uc5d0 \uac12\uc744 \ub123\uc5b4\uc57c \ud560 \ud544\uc694\uac00 \uc788\uc2b5\ub2c8\ub2e4. \uc0c1\ud669\uc740 \uc9c0\uc801\ub3c4\uac00 \uc800\uc7a5\ub41c \ud14c\uc774\ube14\uc758 PNU \ud544\ub4dc\ub97c \ud30c\uc2f1\ud574\uc11c \ubc88\uc9c0\uac12\uc744 \ub9cc\ub4e4\uc5b4 \uc800\uc7a5\ud574\uc57c \ud569\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4\uc11c PNU\uac00 &#8216;2911011200200470001&#8217;\ub77c\uba74 &#8217;47-1\uc0b0&#8217;\uc73c\ub85c \ub9cc\ub4e4\uc5b4\uc57c \ud55c\ub2e4\ub294 \uac83\uc785\ub2c8\ub2e4. <\/p>\n<p>\uc0ac\uc6a9\ud558\ub294 \ub370\uc774\ud130\ubca0\uc774\uc2a4\uac00 PostgreSQL\uc774\ubbc0\ub85c pl\/pgsql\uc744 \uc774\uc6a9\ud558\uc600\ub294\ub370\uc694. cursor\ub97c \uc774\uc6a9\ud558\ub294 \ubc29\uc2dd\uacfc cursor\ub97c \uc774\uc6a9\ud558\uc9c0 \uc54a\ub294 \ubc29\uc2dd\uc774 \uc788\ub294\ub370.. \uba3c\uc800 cursor\ub97c \uc774\uc6a9\ud558\uc9c0 \uc54a\ub294 \ubc29\uc2dd\uc740 \uc544\ub798\uc640 \uac19\uc2b5\ub2c8\ub2e4.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">\r\nDO $$\r\nDECLARE\r\n    r RECORD;\r\n    n1 INTEGER;\r\n    n2 INTEGER;\r\n    s TEXT;\r\n    v TEXT;\r\nBEGIN\r\n    FOR r IN SELECT * FROM ecl_cadastral LOOP\r\n        n1 = substr(r.pnu, 12, 4)::INTEGER;\r\n        n2 = substr(r.pnu, 16, 4)::INTEGER;\r\n        s = substr(r.pnu, 11, 1);\r\n        \r\n        IF n2 = 0 THEN\r\n            v = n1;\r\n        ELSE\r\n            v = n1 || '-' || n2;\r\n        END IF;\r\n\r\n        IF s = '2' THEN\r\n            v = v || '\uc0b0';\r\n        END IF;\r\n\r\n        UPDATE ecl_cadastral SET label = v WHERE fid = r.fid;\r\n    END LOOP;\r\nEND;\r\n$$ LANGUAGE plpgsql;\r\n<\/pre>\n<p>\ub3d9\uc77c\ud55c \uae30\ub2a5\uc73c\ub85c cursor\ub97c \uc774\uc6a9\ud558\ub294 \ubc29\uc2dd\uc740 \uc544\ub798\uc640 \uac19\uc2b5\ub2c8\ub2e4.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">\r\nDO $$\r\nDECLARE\r\n    c CURSOR FOR SELECT * FROM ecl_cadastral;\r\n    r RECORD;\r\n    n1 INTEGER;\r\n    n2 INTEGER;\r\n    s TEXT;\r\n    v TEXT;\r\nBEGIN\r\n    FOR r IN c LOOP\r\n        n1 = substr(r.pnu, 12, 4)::INTEGER;\r\n        n2 = substr(r.pnu, 16, 4)::INTEGER;\r\n        s = substr(r.pnu, 11, 1);\r\n        \r\n        IF n2 = 0 THEN\r\n            v = n1;\r\n        ELSE\r\n            v = n1 || '-' || n2;\r\n        END IF;\r\n\r\n        IF s = '2' THEN\r\n            v = v || '\uc0b0';\r\n        END IF;\r\n\r\n        UPDATE ecl_cadastral SET label = v WHERE CURRENT OF c;\r\n    END LOOP;\r\nEND;\r\n$$ LANGUAGE plpgsql;\r\n<\/pre>\n<p>\uc18d\ub3c4\ub294 cursor\ub97c \uc774\uc6a9\ud558\ub294 \ubc29\uc2dd\uc774 \uc57d 20% \uc815\ub3c4 \ube68\ub790\uc2b5\ub2c8\ub2e4.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\uae30\uc874\uc758 \ud14c\uc774\ube14\uc5d0 \uc0c8\ub85c\uc6b4 \ud544\ub4dc\ub97c \ucd94\uac00\ud558\uace0, \uc774 \ud544\ub4dc\uc5d0 \uac12\uc744 \ub123\uc5b4\uc57c \ud560 \ud544\uc694\uac00 \uc788\uc2b5\ub2c8\ub2e4. \uc0c1\ud669\uc740 \uc9c0\uc801\ub3c4\uac00 \uc800\uc7a5\ub41c \ud14c\uc774\ube14\uc758 PNU \ud544\ub4dc\ub97c \ud30c\uc2f1\ud574\uc11c \ubc88\uc9c0\uac12\uc744 \ub9cc\ub4e4\uc5b4 \uc800\uc7a5\ud574\uc57c \ud569\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4\uc11c PNU\uac00 &#8216;2911011200200470001&#8217;\ub77c\uba74 &#8217;47-1\uc0b0&#8217;\uc73c\ub85c \ub9cc\ub4e4\uc5b4\uc57c \ud55c\ub2e4\ub294 \uac83\uc785\ub2c8\ub2e4. \uc0ac\uc6a9\ud558\ub294 \ub370\uc774\ud130\ubca0\uc774\uc2a4\uac00 PostgreSQL\uc774\ubbc0\ub85c pl\/pgsql\uc744 \uc774\uc6a9\ud558\uc600\ub294\ub370\uc694. cursor\ub97c \uc774\uc6a9\ud558\ub294 \ubc29\uc2dd\uacfc cursor\ub97c \uc774\uc6a9\ud558\uc9c0 \uc54a\ub294 \ubc29\uc2dd\uc774 \uc788\ub294\ub370.. \uba3c\uc800 cursor\ub97c \uc774\uc6a9\ud558\uc9c0 \uc54a\ub294 \ubc29\uc2dd\uc740 \uc544\ub798\uc640 \uac19\uc2b5\ub2c8\ub2e4. DO $$ DECLARE r &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/www.gisdeveloper.co.kr\/?p=4960\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;pl\/pgsql\uc744 \uc774\uc6a9\ud55c \ud14c\uc774\ube14 \uc5c5\ub370\uc774\ud2b8(Update)&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[50],"tags":[],"class_list":["post-4960","post","type-post","status-publish","format-standard","hentry","category-gisdev"],"_links":{"self":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/4960","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4960"}],"version-history":[{"count":3,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/4960\/revisions"}],"predecessor-version":[{"id":9644,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/4960\/revisions\/9644"}],"wp:attachment":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4960"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4960"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4960"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}