SQLを使用したネストされたコメントの背後にあるアルゴリズム

i_user

たとえば、子のネストされたレコードの背後にあるアルゴリズムが親のネストされたレコード内に表示されることを知りたい

Comment 1 (parent record)
reply 1 (child record)
reply 2 (child record)
reply 3 (child record)
view all

Comment 2 (parent record)
reply 1 (child record)
reply 2 (child record)
reply 3 (child record)
view all

上記の結果を得るためにクエリはどのように記述されますか?

ユーアイ

以下のような再帰共通テーブル式を使用できます

;WITH comments AS 
(
    SELECT 1 as ID,'Comment 1' detail,NULL AS ParentID
    UNION ALL SELECT 2 as ID,'Comment 2',NULL AS ParentID
    UNION ALL SELECT 3 as ID,'Reply 1',1 AS ParentID
    UNION ALL SELECT 4 as ID,'Reply 2',3 AS ParentID
    UNION ALL SELECT 5 as ID,'Reply 3',4 AS ParentID
    UNION ALL SELECT 6 as ID,'Reply 4',2 AS ParentID
    UNION ALL SELECT 7 as ID,'Reply 5',6 AS ParentID
),comment_hierarchy AS 
(
    SELECT ID,detail,ID AS prid,0 AS orderid
    FROM comments
    WHERE ParentID IS NULL
    UNION ALL 
    SELECT c.ID,c.detail ,ch.prid as prid,ch.orderid + 1
    FROM comments c
    INNER JOIN comment_hierarchy ch
    ON c.ParentID = ch.ID
)
SELECT ID,Detail
FROM comment_hierarchy
ORDER BY prid,orderid asc

詳細については、を参照してください

https://technet.microsoft.com/en-us/library/ms186243%28v=sql.105%29.aspx

親のすべての子(子孫)を取得するためのCTE

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

グラフを分割して、分割された各グループ(またはコンポーネント)の値を等しくまたはバランスさせるために使用できるアルゴリズムはどれですか?

分類Dev

カーニハンのビットカウントアルゴリズムの背後にあるロジックを説明してください

分類Dev

ネストされた反復関数を使用した再帰的アルゴリズムの時間計算量?

分類Dev

グリッドビューアイテムテンプレートにネストされたdivのクラスをc#の背後にあるコードから動的に変更します

分類Dev

既知のコストを使用したA *アルゴリズム

分類Dev

sshトンネルを使用したファイアウォールの背後にあるホストへのインターネットアクセス

分類Dev

スプリット トンネルを使用した OpenVPN サーバーの背後にある LAN への SSH/RDP アクセス

分類Dev

ホワイトバランスアルゴリズムの背後にある数学は何ですか?

分類Dev

使用されたコインの実際のリストを返す動的な変更作成アルゴリズム

分類Dev

アルゴリズムの効率-パンダを使用したデータ処理の効率(3つのネストされたforループ)

分類Dev

ネストされたリストを検索してリストがすでに存在するかどうかを確認するPythonアルゴリズム

分類Dev

C ++ STLアルゴリズムを使用してネストされたループを書き直す方法は?

分類Dev

ネストされた配列を構築するための再帰的アルゴリズム

分類Dev

ウェイポイントの代わりに2Dポリゴンを使用したAIパスファインディング-推奨されるアルゴリズムはありますか?

分類Dev

CakePHPハッシュアルゴリズムとSALTを使用してMySQLfor CakePHP Webサイトデータベースで暗号化されたパスワードを生成するためのSQLステートメントを作成するにはどうすればよいですか?

分類Dev

ネストされた再帰配列に再帰ツリーアルゴリズムを実装する方法

分類Dev

断片化されたリンクリストを再編成するためのアルゴリズム

分類Dev

Cassandraのトークン関数の背後にあるアルゴリズムは何ですか?

分類Dev

アルゴリズムの複雑さ(ネストされたループ)

分類Dev

ネストされたforループを使用する場合、ネストされたループ内のアイテムがifステートメントをトリガーしない場合にアクションを完了する方法

分類Dev

アルゴリズムによる差別化と分析的導関数を使用した複数の明示的なコンポーネント

分類Dev

ネストされたforループを使用した再帰アルゴリズムのBig-O時間の複雑さ

分類Dev

ネストされたforループを使用した再帰アルゴリズムのBig-O時間の複雑さ

分類Dev

任意の数のネストされたforループのアルゴリズム

分類Dev

任意の数のネストされたforループのアルゴリズム

分類Dev

Linkedhashmapを使用したアルゴリズムのテスト

分類Dev

ストリームインターフェイスでソートされたメソッドを使用するアルゴリズム

分類Dev

ネストされたforループアルゴリズム、JavaScriptの最適化

分類Dev

デュアルコンターアルゴリズムが台無しになりました-これを引き起こす可能性のあるアイデアはありますか(スクリーンショット)?

Related 関連記事

  1. 1

    グラフを分割して、分割された各グループ(またはコンポーネント)の値を等しくまたはバランスさせるために使用できるアルゴリズムはどれですか?

  2. 2

    カーニハンのビットカウントアルゴリズムの背後にあるロジックを説明してください

  3. 3

    ネストされた反復関数を使用した再帰的アルゴリズムの時間計算量?

  4. 4

    グリッドビューアイテムテンプレートにネストされたdivのクラスをc#の背後にあるコードから動的に変更します

  5. 5

    既知のコストを使用したA *アルゴリズム

  6. 6

    sshトンネルを使用したファイアウォールの背後にあるホストへのインターネットアクセス

  7. 7

    スプリット トンネルを使用した OpenVPN サーバーの背後にある LAN への SSH/RDP アクセス

  8. 8

    ホワイトバランスアルゴリズムの背後にある数学は何ですか?

  9. 9

    使用されたコインの実際のリストを返す動的な変更作成アルゴリズム

  10. 10

    アルゴリズムの効率-パンダを使用したデータ処理の効率(3つのネストされたforループ)

  11. 11

    ネストされたリストを検索してリストがすでに存在するかどうかを確認するPythonアルゴリズム

  12. 12

    C ++ STLアルゴリズムを使用してネストされたループを書き直す方法は?

  13. 13

    ネストされた配列を構築するための再帰的アルゴリズム

  14. 14

    ウェイポイントの代わりに2Dポリゴンを使用したAIパスファインディング-推奨されるアルゴリズムはありますか?

  15. 15

    CakePHPハッシュアルゴリズムとSALTを使用してMySQLfor CakePHP Webサイトデータベースで暗号化されたパスワードを生成するためのSQLステートメントを作成するにはどうすればよいですか?

  16. 16

    ネストされた再帰配列に再帰ツリーアルゴリズムを実装する方法

  17. 17

    断片化されたリンクリストを再編成するためのアルゴリズム

  18. 18

    Cassandraのトークン関数の背後にあるアルゴリズムは何ですか?

  19. 19

    アルゴリズムの複雑さ(ネストされたループ)

  20. 20

    ネストされたforループを使用する場合、ネストされたループ内のアイテムがifステートメントをトリガーしない場合にアクションを完了する方法

  21. 21

    アルゴリズムによる差別化と分析的導関数を使用した複数の明示的なコンポーネント

  22. 22

    ネストされたforループを使用した再帰アルゴリズムのBig-O時間の複雑さ

  23. 23

    ネストされたforループを使用した再帰アルゴリズムのBig-O時間の複雑さ

  24. 24

    任意の数のネストされたforループのアルゴリズム

  25. 25

    任意の数のネストされたforループのアルゴリズム

  26. 26

    Linkedhashmapを使用したアルゴリズムのテスト

  27. 27

    ストリームインターフェイスでソートされたメソッドを使用するアルゴリズム

  28. 28

    ネストされたforループアルゴリズム、JavaScriptの最適化

  29. 29

    デュアルコンターアルゴリズムが台無しになりました-これを引き起こす可能性のあるアイデアはありますか(スクリーンショット)?

ホットタグ

アーカイブ