在一个sql查询中计算很多布尔字段?
不确定如何解释这个但是想象你有一个包含许多布尔字段的表……
表:汽车 列:
(愚蠢的田地,其中大部分都不会在现实中沸腾,只是一个例子) 我需要做的是生成这些字段的列表,每个字段旁边有一些搜索结果,所以如果数据库中有100辆银色汽车和57辆美国汽车,那么列表可能看起来有点像这样……
所以,它基本上就像一个过滤器列表,如果用户点击“白银”,他们会缩小搜索范围,只显示银色汽车,他们知道他们将得到100个结果.然后,所有其他过滤器旁边的数字将减少,因为我们已经过滤掉所有非银色的汽车. 计算一个场的出现很容易…… SELECT COUNT(*)FROM CARS WHERE Automatic = true; ……例如,我会给第一行.但是我不想为每个过滤器做一个SQL语句,因为它们可能超过30个.我见过很多网站这样做,所以它必须比我想象的要容易. 真的很感激任何帮助:) 乔恩 解决方法假设该位为1/0,则可以使用SUM而不是COUNT:SELECT SUM(Automatic) as Automatic,SUM(Smelly) as Smelly,SUM(American) as Japanese FROM ... (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |