繁体   English   中英

如果在Mysql查询中的ELSE条件 - PHP

[英]IF ELSE Conditions in Mysql Query - PHP

我试图使用IF ELSE条件管理查询。 但是我没有使用IF ELSE而是使用案例。

我想通过对用户类型做出决定来进行GROUP BY

这是我的查询。

SELECT * 
FROM users
WHERE flag = 1 AND blockStatus = 0
GROUP BY
CASE userType
    WHEN 1 THEN
        jobId
    WHEN 2 THEN
        experienceId
END

不知何故,它正在获取相同jobId或experienceId的多个记录。

实施这种条件的正确方法是什么?

SQL FIDDLE HERE:

http://sqlfiddle.com/#!2/e3df6/1

如果您使用php创建此查询,那么为什么不根据php中的数据创建您的查询: -

$query = ($userType==1) ? "Select * from users where flag=1 and blockstatus=0 group by jobId" : "Select * from users where flag=1 and blockstatus=0 group by experienceId";

你可以尝试这样..

SELECT *
FROM user
where usertype =1 group by jobid
union
SELECT *
FROM user
where usertype =2 group by experienceId

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM