1
我需要從一個表中獲取值以及與每個值匹配的行數。更清楚地,來自SQLite中2個表的值
- 沒有與列
ID
和TEXT
- 表A中有一個與用於表
A
列ID
,TEXT
,A_ID
和FRESH
一些示例性數據的另一表B:
+---+-------------+
|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
那個的B
每行中的特定TEXT
值匹配的行的鍵。
所以我需要的是,我需要得到的數據是這樣的:
1 | Fruit | 1
2 | Vegetable | 1
所以在上面的結果,第一列是表A
的ID
,第二列是的TEXT
表A
和最終(第三)列是在表B
的計數的行,其中所述柱FRESH
具有「是」值。
我已經能夠得到與此類似的值,但總行數作爲第三列,而不僅僅是「新鮮」行。
我嘗試這樣做:
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
給我叫一個錯誤:「錯誤:沒有這樣的列:鮮」 – Roshnal
只刪除了'FRESH ='部分解決了這個問題。現在完美工作...非常感謝:)編輯你的答案,我會選擇它是正確的。 – Roshnal
@羅希納爾哦對不起,應該使用'AS FRESH'將列名作爲'FRESH':) – Nalaka526