我想弄清楚我需要从我的用户表中获取记录的SQL查询。SQL查询显示记录
"SELECT * FROM users WHERE level!='4'"
4级用户默认为“COMPLETED”,因此不显示。 但是,如果活动值小于5,我确实希望显示已完成的用户。 任何活动值为5的用户都是“绿色”,并且不需要我的注意。
知道我的运气,这是一个非常简单的答案,但这是一个漫长的一天,我的头炸了。
我想弄清楚我需要从我的用户表中获取记录的SQL查询。SQL查询显示记录
"SELECT * FROM users WHERE level!='4'"
4级用户默认为“COMPLETED”,因此不显示。 但是,如果活动值小于5,我确实希望显示已完成的用户。 任何活动值为5的用户都是“绿色”,并且不需要我的注意。
知道我的运气,这是一个非常简单的答案,但这是一个漫长的一天,我的头炸了。
你可以像这样:
SELECT *
FROM users
WHERE level <> '4'
OR (level = '4' and Activity < 5);
我已经关掉不等号 - <>
is more portable
对模式的猜测! –
这应该解决您的问题
SELECT * FROM用户WHERE级= '4'OR(活动<'5'AND level = '4')
发表您的表结构和一些样本数据 –
是MySQL或SQL服务器? –
对于大多数数据库,在平等中用<>表示。您可以使用!=但它必须是数据库特定的。 –