SQL SERVERデータベースでのFOR XML PATH関数の使用

少しの学習を記録してください!

1. FOR XML PATHの簡単な紹介

では、最初にFOR XML PATHを紹介しましょう。患者情報の保存に使用されるホビーテーブル(TBJTXXCE)があるとします。テーブル構造は次のとおりです。

 

 

 次に、次のようにFOR XML PATHを使用してクエリ結果ステートメントを確認します。

TBJTXXCEからXMLパスを選択*

 

 FOR XML PATHは、行に従ってクエリ結果をさまざまなXMLに出力できることがわかります。

      では、XML行ノードの名前を変更するにはどうすればよいでしょうか。コードは次のとおりです。   

 SELECT * FROM TBJTXXCE FOR XML PATH( 'xiyouji')

 

 上記は、FOR XML PATHの基本的な構文操作であり、特定の実際のアプリケーションに反映されています。次に例を示します。

ここで、 "Zhu Bajie"が相談した部門と、これらの部門での登録の種類を知りたいスクリプトは次のとおりです。

SELECT B.CXM、CKSMC、LEFT(CGHZL、LEN(CGHZL)-1)as CGHZL FROM(
SELECT CXM、CKSMC、
(SELECT CGHZL + '、' FROM TBJTXXCE
WHERE CKSMC = A.CKSMC
FOR XML PATH( ''))ASとしてCGHZL
FROM TBJTXXCE A
GROUP BY CXM、CKSMC
)B

スクリプト実行結果:

 

CGHZLとしての外側のSELECTステートメントLEFT(CGHZL、LEN(CGHZL)-1)は、CGHZLの後のコンマを削除します。

内部ステートメントの実行結果:

CXM、CKSMCを
選択します(SELECT CGHZL + '、' FROM TBJTXXCE
WHERE CKSMC = A.CKSMC
FOR XML PATH( ''))AS CGHZL
FROM TBJTXXCE A
GROUP BY CXM、CKSMC

 

おすすめ

転載: www.cnblogs.com/since-1995/p/12681571.html