SELECT COUNT(DISTINCT productId) WHERE keyword='$keyword'
如何按条件计算不同的行
SELECT COUNT(DISTINCT productId -- THIS IS WHERE I NEED TO PUT CONDITION --) WHERE keyword='$keyword'
如果该行没有type <> 1
答案 0 :(得分:2)
我不确定,但你在找这个:
SELECT COUNT(DISTINCT productId) from table_name WHERE keyword='$keyword' and type!=1
修改强>
SELECT COUNT(DISTINCT CASE WHEN type <> 1
THEN productId
ELSE NULL
END
)
FROM table_name
WHERE keyword='$keyword'
答案 1 :(得分:1)
假设修改WHERE
子句时出现问题,您可以使用CASE operator
或IF function
:
SELECT COUNT(DISTINCT CASE WHEN type <> 1 THEN productId ELSE NULL END)
FROM <table>
WHERE keyword = '<keyword>'
答案 2 :(得分:0)
额外条件在WHERE
子句中,而不在SELECT
子句中。
SELECT COUNT(DISTINCT productId)
WHERE keyword = '$keyword'
AND type != 1