新人求教MySQL关于判断后拼接条件进行查询的sql语句
本文介绍了新人求教MySQL关于判断后拼接条件进行查询的sql语句的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
想实现当b.phase>2就执行拼接条件:AND unix_timestamp()> second_end_time
否则拼接条件:AND unix_timestamp()> thirdly_end_time 的语句
求教各位应如何编写该SQL?
SELECT * FROM data a, race b
WHERE
a.race_id = b.race_id
IF (b.phase > 2, AND unix_timestamp()> second_end_time , AND unix_timestamp()> thirdly_end_time)
AND user_id = 123
以上为自己乱写,语法并不对,求指点!
解决方案
SELECT * FROM data a,race b WHERE a.race_id=b.race_id AND ((b.phase>2 AND UNIX_TIMESTAMP()>second_end_time) OR (b.phase<=2 AND UNIX_TIMESTAMP()>thirdly_end_time));
这篇关于新人求教MySQL关于判断后拼接条件进行查询的sql语句的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文