跨列的MySQL不同值
作者:互联网
我有下表:
id lb rb ls rs ch bk ot 1 10000 10001 10001 10001 10001 10001 10000 2 0 10000 0 10001 0 10000 0 3 0 0 10000 10001 10000 0 0 4 0 0 0 10000 0 0 0 5 0 0 0 10000 0 0 0
我希望能够获得所有列的总不同值(不包括0),因此结果是这样的:
Code Qty 10000 8 10001 7
最简单/最好的方法是什么?
谢谢,斯图
解决方法:
你可以做
SELECT col1, COUNT(*)
FROM
(
SELECT lb AS col1
FROM table
UNION ALL
SELECT rb
FROM table
UNION ALL ... etc
) a
WHERE col1 != 0
GROUP BY col1
您可以向UNION中的每个SELECT添加WHERE field_name!= 0,而不是WHERE col1!= 0
标签:mysql,distinct,multiple-columns 来源: https://codeday.me/bug/20190709/1418217.html