我有一個表可能在兩列之一列B和/或列C中具有搜索值。我想根據列A產生彙總,顯示所選搜索值(例如x)出現在每個人的任一列中多少次。我想要統計兩列中的總數。Mysql彙總包含兩列中的一列中的值的所有行
+--------+------+----+
| name | B | C |
+--------+------+----+
| john | x | z |
| john | x | x |
| john | y | x |
| peter | x | z |
| peter | x | z |
| amanda | x | x |
| amanda | x | x |
| amanda | x | x |
| amanda | x | y |
| amanda | x | y |
+--------+-----------+
在上面的例子中,假設我的搜索值爲x,我要算X出現了多少次的每個人在列B和/或列C.我也想生產總計,併產生這樣的輸出:
Name B C
john 2 2
peter 2 0
amanda 5 3
total 9 5
我能做到這一點爲每列分別是這樣的:
SELECT name, COUNT(*) as count FROM table
WHERE A = 'x'
GROUP BY name
ORDER BY count DESC";
SELECT name, COUNT(*) as count FROM table
WHERE B = 'x'
GROUP BY name
ORDER BY count DESC";
然後我就可以從周圍上的每個輸出做單獨取並將它們組合循環,但我想牛逼o知道是否有辦法在兩列的mysql語句中進行檢查和計數?