gpt4 book ai didi

mysql - 根据列值忽略mysql行

转载 作者:行者123 更新时间:2023-11-30 23:27:25 26 4
gpt4 key购买 nike

我有一个使用 mysql 数据库的 phpbb 论坛。用户由“user_id”标识。但是,他们有多个组。用户将属于“人类”(9) 或“僵尸”(8) 组。但是,它们将始终位于“已注册”(2) 组中。这将创建一个如下所示的表:

mysql table

一共使用三个数据库,组成一张新表。

SELECT phpbb_users.user_id 'ID',
IF( phpbb_user_group.group_id =9, 'Human', IF( phpbb_user_group.group_id =8, 'Zombie', '')) AS Team,

IF( phpbb_profile_fields_data.pf_oz =1, 'Yes', ' ' ) AS OZ,
phpbb_users.username 'Player', phpbb_users.user_email 'E-mail',
IF( phpbb_profile_fields_data.pf_share_phonenum =1, phpbb_profile_fields_data.pf_phone_number, ' ' ) AS Phone,
phpbb_profile_fields_data.pf_code 'Tag Code',
phpbb_profile_fields_data.pf_student_id 'Student ID', phpbb_users.starve 'Time Remaining (in hours)'
FROM phpbb_profile_fields_data, phpbb_users, phpbb_user_group
WHERE phpbb_profile_fields_data.user_id = phpbb_users.user_id
AND phpbb_profile_fields_data.user_id = phpbb_user_group.user_id
LIMIT 0 , 300

我需要从结果集中删除“Team”(这是“registered”组的结果)下所有带有空白字段的行。感谢所有帮助!

最佳答案

WHERE 子句的末尾添加一个 HAVING 子句,如下所示:

WHERE phpbb_profile_fields_data.user_id = phpbb_users.user_id
AND phpbb_profile_fields_data.user_id = phpbb_user_group.user_id
HAVING Team <> ''
LIMIT 0 , 300

HAVING 子句将使MySQL 对查询结果(包括任何聚合结果)进行另一次过滤,然后丢弃那些与HAVING 不匹配的记录 子句。

您还可以在 HAVING 子句中设置多个条件,如下所示:

HAVING Team <> '' and Player <> 'First Last'

关于mysql - 根据列值忽略mysql行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12549933/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com