你好我嘗試學習SQL約數,但我不能甚而計算價值有多少次是在一個特定的列計數SQL語法COUNT(值)多列
我的數據庫結構是這樣的。 (表:自然)
ID | one | two | three |
1 | 34 | 45 | 80 |
2 | 41 | 34 | 7 |
3 | 7 | 18 | 22 |
4 | 8 | 7 | 45 |
我試着這樣
$result=mysql_query("SELECT COUNT(one) AS total FROM natural
WHERE one=7")or die("Error: ".mysql_error());
$data=mysql_fetch_assoc($result);
echo $data['total'];
但即使在數只有1列,我不能得到的結果..
我需要的是指望有多少次是所有列中的「值」(例如7)
類似於本示例中的值7 = 3總計(多列)
我怎樣才能讓這樣的SQL。
編輯:嘗試這(哪裏是我的語法問題?)
$result=mysql_query("SELECT COUNT(DISTINCT id) TotalCount FROM tblname WHERE 7 IN (one, two, three)")or die("Error: ".mysql_error());
$data=mysql_fetch_assoc($result);
echo $data['TotalCount'];
我吸了,謝謝您的回答,但我認爲我的問題是用的mysql_query()因爲我始終有一個語法問題,用你所有的答案和它顯然是我的。
$result=mysql_query("SELECT (SUM(CASE WHEN one = 7 THEN 1 ELSE 0 END) +
SUM(CASE WHEN two = 7 THEN 1 ELSE 0 END) +
SUM(CASE WHEN three = 7 THEN 1 ELSE 0 END)) TotalCount
FROM natural")or die("Error: ".mysql_error());
$data=mysql_fetch_assoc($result);
echo $data['TotalCount'];
爲了解決這個問題最後的代碼,只需使用one
和two
...等等,這就是natural
正確的語法:d
只是一個音符。 'mysql_query'被刪除。學習mysqli或PDO。 – itachi