3

結合を使用して、sqlite テーブルから多次元配列を取得したいと考えています。私は2つのテーブルを持っています:


TABLES:

- projects -----------        - images ------------------
- id                 -        - id                      -
- title              -        - filename                -
- images (has many)  -        - project_id (belongs to) -
----------------------        ---------------------------

そして、次の配列が必要です


PROJECT_ARRAY
{
   id:     1
   title:  My Project
   images: IMAGES_ARRAY
   {
        image1.jpg
        image2.jpg
        image3.jpg
   }
}

SQL クエリでテーブルを結合するにはどうすればよいですか?

これは動作しません:


SELECT   project.title,        image.filename
FROM     project JOIN image
ON       image.project_id = project.id;

4

1 に答える 1

1

1 つのクエリから部分配列を含む配列を取得することはできません。

さらに、テーブル名は複数形ですが、クエリで複数形の名前を使用していません。

このクエリを使用すると、次のようになります。

SELECT   p.id, p.title, i.filename
FROM     projects p 
JOIN     images i ON i.project_id = p.id;

これにより、次のような結果セットが得られるはずです。

id: 1, title: My Project, filename: image1.jpg
id: 1, title: My Project, filename: image2.jpg
id: 1, title: My Project, filename: image3.jpg
于 2012-10-26T18:46:26.543 に答える