我正在尝试使用2个表中的字段进行查询。 我需要查询Table1,但只有Table2具有我需要查询的变量venue_location。
基本上我需要计算Table1中Table1.venue_location = $ MyVariable的所有记录。
以下是我的内容,但我相信我需要使用联接吗?
Table1
- venue_id
Table2
- venue_id,
- venue_location
SELECT * FROM Table1 WHERE table1.venue_id = table2.venue_id and table2.location = '$MyVariable'
我该如何查询?
答案 0 :(得分:1)
使用联接表的力量
SELECT * FROM Table1
JOIN Table2 USING(venue_id)
WHERE table2.location = '$MyVariable'
您可以在PHP中使用mysqli_num_rows()
取回行数,或者按SELECT COUNT(*) AS nbRow FROM ...
更改选择并检查nbRow
列中的值
答案 1 :(得分:1)
您可以在venue_id上加入两个表格,然后按venue_id
location
$MyVariable
为SELECT count(table2.venue_id)
FROM Table1
JOIN Table2 ON table1.venue_id = table2.venue_id
WHERE table2.location = '$MyVariable'
GROUP BY table2.venue_id
对其进行分组。
您的最终查询将如下所示:
{{1}}
答案 2 :(得分:1)
试试这个
SELECT Table1.venue_id, Table2.venue_location FROM Table1 INNER JOIN Table2
ON Table1.venue_id='$MyVariable';