0

次の表を検討してください。

ダディテーブル

daddy_id | daddy_name
       1 | daddyA
       2 | daddyB

子テーブル

child_id | child_name | daddy_id
       1 | childA     | 1
       2 | childB     | 1
       3 | childC     | 1
       4 | childD     | 2

特別な理由から、次のような結果セットを返すクエリが必要です。

結果セット 1

daddy_id | daddy_name | child_id1 | child_id2 | child_id3 |
       1 | daddyA     | childA    | childB    | childC    |

結果セット 2

daddy_id | daddy_name | child_id1
       2 | daddyB     | childD

私の質問は、これを達成するために努力し続けるべきですか? C# と Sqlite を使用するだけでこれを実現できますか?

: .NET Framework 4.0 の汎用データ リーダーを使用していますが、sqlite3 で動作するクエリが必要です。

4

2 に答える 2

1

次のクエリを試すことができます。

SELECT daddy_id,
       daddy_name,
       (SELECT group_concat(child_name)
        FROM children
        WHERE children.daddy_id = dads.daddy_id
       ) AS children
FROM dads

次のような結果が得られます。

daddy_id | daddy_name | children
       1 | daddyA     | childA,childC,childB
       2 | daddyB     | childD
于 2013-02-13T15:11:14.777 に答える