[英]Insert array into SQL query
我正在運行以下SQL查詢...
$user = 'salesrep_83';
SELECT COUNT(*) AS COUNT
FROM my_table_1 a
JOIN my_table_2 b
ON b.id = a.sale_id
WHERE a.value = '$user'
AND b.date_posted LIKE '05-05-2014'
這可以正常工作,並向我顯示今天日期指定$ user的所有銷售額。 我想更改此信息,以便向我顯示所有銷售代表的今日銷售情況。 我可以使用所有用戶ID生成和數組,但不確定如何將其插入到查詢中
有人有例子嗎?
您只需使用in
運算符即可。
SELECT COUNT(*) AS count
FROM my_table_1 a JOIN my_table_2 b ON b.id = a.sale_id
WHERE a.value in ('salesrep_82','salesrep_83')
AND b.date_posted = '05-05-2014'
更新(你是對的Rahul):
沒有像%
這樣的通配符,使用LIKE
是沒有意義的
b.date_posted LIKE '05-05-2014'
采用
b.date_posted = '05-05-2014'
代替。
如果要合並所有用戶的聚合,只需使用in
子句:
SELECT COUNT(*) AS COUNT
FROM my_table_1 a
JOIN my_table_2 b
ON b.id = a.sale_id
WHERE a.value in ('$user1', '$user2')
AND b.date_posted LIKE '05-05-2014'
如果您希望按用戶列出銷售清單,則可以將in
與group by
結合使用:
SELECT value, COUNT(*) AS COUNT
FROM my_table_1 a
JOIN my_table_2 b
ON b.id = a.sale_id
WHERE a.value in ('$user1', '$user2')
AND b.date_posted LIKE '05-05-2014'
GROUP BY value
請注意,根據您運行此查詢的位置,由於SQL注入等問題,將字符串值分配給它通常不是一個好習慣。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.