{"id":2493,"date":"2016-01-13T17:23:41","date_gmt":"2016-01-13T09:23:41","guid":{"rendered":"http:\/\/jason695.why3s.tw\/wordpress\/?p=2493"},"modified":"2016-01-13T17:24:46","modified_gmt":"2016-01-13T09:24:46","slug":"sql%e5%b0%87%e5%a4%9a%e7%ad%86%e8%b3%87%e6%96%99%e5%90%88%e4%bd%b5%e7%82%ba%e4%b8%80%e7%ad%86%e9%a1%af%e7%a4%bafor-xml-path","status":"publish","type":"post","link":"https:\/\/jason695.why3s.tw\/wordpress\/2016\/01\/13\/sql%e5%b0%87%e5%a4%9a%e7%ad%86%e8%b3%87%e6%96%99%e5%90%88%e4%bd%b5%e7%82%ba%e4%b8%80%e7%ad%86%e9%a1%af%e7%a4%bafor-xml-path\/","title":{"rendered":"[SQL]\u5c07\u591a\u7b46\u8cc7\u6599\u5408\u4f75\u70ba\u4e00\u7b46\u986f\u793a(FOR XML PATH)"},"content":{"rendered":"<div class=\"article__content\">\n<div class=\"article__desc\">\n<p><a href=\"https:\/\/www.dotblogs.com.tw\/kevinya\/archive\/2012\/06\/01\/72553.aspx\" target=\"_blank\">\u539f\u6587:[SQL]\u5c07\u591a\u7b46\u8cc7\u6599\u5408\u4f75\u70ba\u4e00\u7b46\u986f\u793a(FOR XML PATH)<\/a><\/p>\n<\/div>\n<p>\u7528\u5317\u98a8\u8cc7\u6599\u5eab\u8209\u4f8b<\/p>\n<p>step1:\u5148\u8b93\u6211\u5011\u770b\u770borderID = &#8216;10248&#8217;\u7684\u7522\u54c1\u6709\u54ea\u4e9b<\/p>\n<pre><code class=\"language-sql hljs\">\r\n<span class=\"hljs-operator\"><span class=\"hljs-keyword\">SELECT<\/span> * <span class=\"hljs-keyword\">FROM<\/span> [<span class=\"hljs-keyword\">Order<\/span> Details] \r\n<span class=\"hljs-keyword\">where<\/span> OrderID = <span class=\"hljs-string\">'10248'<\/span><\/span><\/code><\/pre>\n<p>\u6709\u9019\u4e9b<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/az787680.vo.msecnd.net\/user\/kevinya\/1206\/201261173451240.jpg?ssl=1\" rel=\"lightbox\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/az787680.vo.msecnd.net\/user\/kevinya\/1206\/201261173451240.jpg?w=712&#038;ssl=1\" alt=\"\" border=\"0\" \/><\/a><\/p>\n<p>step2:\u7136\u5f8c\u6211\u5011\u5229\u7528for xml path\u628a\u4ed6\u5408\u4f75\u986f\u793a<\/p>\n<pre><code class=\"language-sql hljs\">\r\n<span class=\"hljs-operator\"><span class=\"hljs-keyword\">SELECT<\/span> <span class=\"hljs-keyword\">cast<\/span>(ProductID <span class=\"hljs-keyword\">AS<\/span> <span class=\"hljs-keyword\">NVARCHAR<\/span> ) + <span class=\"hljs-string\">','<\/span> <span class=\"hljs-keyword\">from<\/span> [<span class=\"hljs-keyword\">Order<\/span> Details] \r\n<span class=\"hljs-keyword\">where<\/span> OrderID = <span class=\"hljs-string\">'10248'<\/span>\r\n<span class=\"hljs-keyword\">FOR<\/span> <span class=\"hljs-keyword\">XML<\/span> <span class=\"hljs-keyword\">PATH<\/span>(<span class=\"hljs-string\">''<\/span>)<\/span><\/code><\/pre>\n<p>\u8f38\u51fa\u662f\u9019\u6a23\uff0c\u53ef\u4ee5\u767c\u73fe\u679c\u7136productID\u90fd\u5408\u4f75\u4e86<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/az787680.vo.msecnd.net\/user\/kevinya\/1206\/201261173635419.jpg?ssl=1\" rel=\"lightbox\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/az787680.vo.msecnd.net\/user\/kevinya\/1206\/201261173635419.jpg?w=712&#038;ssl=1\" alt=\"\" border=\"0\" \/><\/a><\/p>\n<p>step3:\u7136\u5f8c\u6539\u6210\u986f\u793a\u6240\u6709\u7684order\u7684productID<\/p>\n<pre><code class=\"language-sql hljs\">\r\n<span class=\"hljs-operator\"><span class=\"hljs-keyword\">SELECT<\/span> OrderID,(<span class=\"hljs-keyword\">SELECT<\/span> <span class=\"hljs-keyword\">cast<\/span>(ProductID <span class=\"hljs-keyword\">AS<\/span> <span class=\"hljs-keyword\">NVARCHAR<\/span> ) + <span class=\"hljs-string\">','<\/span> <span class=\"hljs-keyword\">from<\/span> [<span class=\"hljs-keyword\">Order<\/span> Details] \r\n<span class=\"hljs-keyword\">where<\/span> OrderID = <span class=\"hljs-keyword\">ord<\/span>.OrderID\r\n<span class=\"hljs-keyword\">FOR<\/span> <span class=\"hljs-keyword\">XML<\/span> <span class=\"hljs-keyword\">PATH<\/span>(<span class=\"hljs-string\">''<\/span>)) <span class=\"hljs-keyword\">as<\/span> productIDs\r\n<span class=\"hljs-keyword\">from<\/span> orders <span class=\"hljs-keyword\">ord<\/span>\r\n<span class=\"hljs-keyword\">GROUP<\/span> <span class=\"hljs-keyword\">BY<\/span> orderid<\/span><\/code><\/pre>\n<p>\u8f38\u51fa\u50cf\u662f\u9019\u6a23\uff0c\u6240\u6709\u7684order\u7684productID\uff0c\u4f46\u662fproductID\u9084\u591a\u4e00\u500b\u9017\u865f<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/az787680.vo.msecnd.net\/user\/kevinya\/1206\/201261174518583.jpg?ssl=1\" rel=\"lightbox\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/az787680.vo.msecnd.net\/user\/kevinya\/1206\/201261174518583.jpg?w=712&#038;ssl=1\" alt=\"\" border=\"0\" \/><\/a><\/p>\n<p>step4:\u6700\u5f8c\u52d5\u4e9b\u624b\u8173\uff0c\u8f38\u51fa\u5c31\u5b8c\u7f8e\u4e86\uff0c\u6210\u529f\u7684\u5c07\u591a\u7b46\u8cc7\u6599\u5408\u4f75\u70ba\u4e00\u7b46<\/p>\n<pre><code class=\"language-sql hljs\">\r\n<span class=\"hljs-operator\"><span class=\"hljs-keyword\">SELECT<\/span> <span class=\"hljs-keyword\">m<\/span>.OrderID ,<span class=\"hljs-keyword\">left<\/span>(<span class=\"hljs-keyword\">m<\/span>.productIDs,<span class=\"hljs-keyword\">len<\/span>(<span class=\"hljs-keyword\">m<\/span>.productIDs)-<span class=\"hljs-number\">1<\/span>) <span class=\"hljs-keyword\">as<\/span> productIDsFinal <span class=\"hljs-keyword\">from<\/span> \r\n(<span class=\"hljs-keyword\">SELECT<\/span> OrderID,(<span class=\"hljs-keyword\">SELECT<\/span> <span class=\"hljs-keyword\">cast<\/span>(ProductID <span class=\"hljs-keyword\">AS<\/span> <span class=\"hljs-keyword\">NVARCHAR<\/span> ) + <span class=\"hljs-string\">','<\/span> <span class=\"hljs-keyword\">from<\/span> [<span class=\"hljs-keyword\">Order<\/span> Details] \r\n<span class=\"hljs-keyword\">where<\/span> OrderID = <span class=\"hljs-keyword\">ord<\/span>.OrderID\r\n<span class=\"hljs-keyword\">FOR<\/span> <span class=\"hljs-keyword\">XML<\/span> <span class=\"hljs-keyword\">PATH<\/span>(<span class=\"hljs-string\">''<\/span>)) <span class=\"hljs-keyword\">as<\/span> productIDs\r\n<span class=\"hljs-keyword\">from<\/span> orders <span class=\"hljs-keyword\">ord<\/span>\r\n<span class=\"hljs-keyword\">GROUP<\/span> <span class=\"hljs-keyword\">BY<\/span> orderid) <span class=\"hljs-keyword\">M<\/span> <span class=\"hljs-comment\">--\u9019\u500bM\u4e00\u5b9a\u8981\u52a0\uff0c\u4e0d\u77e5\u9053\u70ba\u5565<\/span>\r\n<span class=\"hljs-keyword\">ORDER<\/span> <span class=\"hljs-keyword\">by<\/span> <span class=\"hljs-keyword\">M<\/span>.OrderID <\/span><\/code><\/pre>\n<p>\u6700\u5f8c\u8f38\u51fa:<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/az787680.vo.msecnd.net\/user\/kevinya\/1206\/201261174831709.jpg?ssl=1\" rel=\"lightbox\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/az787680.vo.msecnd.net\/user\/kevinya\/1206\/201261174831709.jpg?w=712&#038;ssl=1\" alt=\"\" border=\"0\" \/><\/a><\/p>\n<\/div>\n<div class=\"article__tags\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u539f\u6587:[SQL]\u5c07\u591a\u7b46\u8cc7\u6599\u5408\u4f75\u70ba\u4e00\u7b46\u986f\u793a(FOR XML PATH) \u7528\u5317\u98a8\u8cc7\u6599\u5eab\u8209\u4f8b step1:\u5148\u8b93\u6211\u5011\u770b &hellip; <a href=\"https:\/\/jason695.why3s.tw\/wordpress\/2016\/01\/13\/sql%e5%b0%87%e5%a4%9a%e7%ad%86%e8%b3%87%e6%96%99%e5%90%88%e4%bd%b5%e7%82%ba%e4%b8%80%e7%ad%86%e9%a1%af%e7%a4%bafor-xml-path\/\" class=\"more-link\">\u95b1\u8b80\u5168\u6587 <span class=\"screen-reader-text\">[SQL]\u5c07\u591a\u7b46\u8cc7\u6599\u5408\u4f75\u70ba\u4e00\u7b46\u986f\u793a(FOR XML PATH)<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[47],"tags":[],"class_list":["post-2493","post","type-post","status-publish","format-standard","hentry","category-sql-server","no-featured-image"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/jason695.why3s.tw\/wordpress\/wp-json\/wp\/v2\/posts\/2493","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jason695.why3s.tw\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jason695.why3s.tw\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jason695.why3s.tw\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jason695.why3s.tw\/wordpress\/wp-json\/wp\/v2\/comments?post=2493"}],"version-history":[{"count":0,"href":"https:\/\/jason695.why3s.tw\/wordpress\/wp-json\/wp\/v2\/posts\/2493\/revisions"}],"wp:attachment":[{"href":"https:\/\/jason695.why3s.tw\/wordpress\/wp-json\/wp\/v2\/media?parent=2493"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jason695.why3s.tw\/wordpress\/wp-json\/wp\/v2\/categories?post=2493"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jason695.why3s.tw\/wordpress\/wp-json\/wp\/v2\/tags?post=2493"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}