1つのテーブルから値を取得し、各値に一致する行の数を取得する必要があります。より明確に、
- 列
ID
とテーブルAがありますTEXT
- 列、、、およびを持つ別のテーブルB
ID
がありTEXT
ますA_ID
FRESH
テーブルのいくつかのサンプルデータA
:
+---+-------------+
|ID | TEXT |
+---+-------------+
| 1 | "Fruit" |
| 2 | "Vegetable" |
+---+-------------+
そしてテーブルのいくつかのデータB
:
+---+----------+----+-------+
|ID | TEXT |A_ID| FRESH |
+---+----------+----+-------+
| 1 | "Banana" | 1 | Yes |
| 2 | "Carrot" | 2 | Yes |
| 3 | "Apple" | 1 | No |
+---+----------+----+-------+
ご覧のとおり、の各行の特定の値に一致するA_ID
テーブルの行のキーが含まれています。A
TEXT
B
したがって、必要なのは、次のようなデータを取得する必要があるということです。
1 | Fruit | 1
2 | Vegetable | 1
したがって、上記の結果では、最初の列はID
of tableA
であり、2番目の列はTEXT
of tableA
であり、最後の(3番目の)列は、列の値が「Yes」であるテーブルの行数です 。B
FRESH
これと同様の値を取得できましたが、「Fresh」行だけでなく、合計行数を3列目にしています。
私はこれを試しました:
SELECT A.ID, A.TEXT, count(B.FRESH) FROM A JOIN B ON A.ID = B.A_ID;
この:
SELECT A.ID, A.TEXT, B.FRESH FROM A JOIN B ON A.ID = B.A_ID;
しかし、期待した結果は得られません。
私はSQLの初心者なので、これに固執しています。助けてください?SQLite3を使用しています