Php 如何检查行中的列是否具有相同的值?
我想检查表中的一列是否具有相同的值Php 如何检查行中的列是否具有相同的值?,php,mysql,Php,Mysql,我想检查表中的一列是否具有相同的值 ID School_Name Student Status 1 Virginia Alex 2 2 Virginia John 2 3 Wonderbow Devi 1 4 San Antonio Lucas 1 5 San Antonio Larsa
ID School_Name Student Status
1 Virginia Alex 2
2 Virginia John 2
3 Wonderbow Devi 1
4 San Antonio Lucas 1
5 San Antonio Larsa 2
如果每个学校名称的值为2
,如何检查列状态
。输出如下所示:
ID School_Name school_stat
1 Virginia TRUE
2 Wonderbow FALSE
3 San Antonio FALSE
因此,如果每个学校名称中的所有学生的状态为2,则结果为真
当前查询:
SELECT*,SUM(状态>1时的情况,否则为真,否则为假结束)作为学校统计数据(来自学校)
但查询的输出错误。您可以使用条件聚合:
SELECT
School_Name,
IF(COUNT(1) = COUNT(IF(Status = 2, 1, NULL)), 'TRUE', 'FALSE') school_stat
FROM t_school
GROUP BY School_Name
请参见SQLFiddle中的内容,如果要执行一些聚合操作,则像id
这样的非聚合列在select中没有意义。您可以使用条件聚合:
SELECT
School_Name,
IF(COUNT(1) = COUNT(IF(Status = 2, 1, NULL)), 'TRUE', 'FALSE') school_stat
FROM t_school
GROUP BY School_Name
请参阅SQLFiddle中的内容,如果您想执行一些聚合操作,那么像id
这样的非聚合列在select中是没有意义的
将分组依据
子句用于分组学校名称
例如
SELECT ID,School_Name,(case when status > 1 then 'TRUE' else 'FALSE' end) as school_stat from temp1
group by School_Name
order by ID asc;
看
将分组依据
子句用于分组学校名称
例如
SELECT ID,School_Name,(case when status > 1 then 'TRUE' else 'FALSE' end) as school_stat from temp1
group by School_Name
order by ID asc;
瞧。非常感谢你。顺便问一下,什么是计数(1)
?@ashura91与计数(*)的结果相同。你也可以用谷歌搜索。非常感谢。顺便问一下,什么是计数(1)?@ashura91与计数(*)的结果相同。你也可以用谷歌搜索。