sql语句中如何一个字段对查询出的多个值添加判断条件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql语句中如何一个字段对查询出的多个值添加判断条件相关的知识,希望对你有一定的参考价值。

sql语句中如何一个字段对查询出的多个值添加判断条件

select [name] from [uerName] where [name] = 'XXX'

[name] = ''XXX' 就是条件筛选

参考技术A 没有看懂,能举写例子吗?追问

比如我查询book表中的书类型,结果又好多种类型,如果查出是儿童读物的话,默认为一种类型的,查出是中学生读物的话是另一种类型,等等

追答

儿童读物,中学生读物,是book表中某一列的值吗,如果是的话,那就行了啊,你还要什么呢?

MySQL语句中判断(字段值是不是为0)不是的话...

MySQL语句中判断(某字段值是否为0)不是的话就 WHERE 中添加条件 某字段值<time()
比如:错误语句,但是容易理解
$f_item_select = "SELECT * FROM `pre_common_block_item` WHERE bid=4 if(panduanziduan!=0) panduanziduan<time() end if ORDER BY displayorder ASC LIMIT 0,5;";

急急急,分数不是问题,可追加!
好心人,帮个忙

写入“select * from pre_common_block_item where bid = 4 and case when panduanziduan!=0 then panduanziduan<time() else 1 end order by displayorder ASC LIMIT 0,5”运行即可。

MySql的核心

MySql是一个快速、多线程、多用户的SQL数据库服务器,其出现虽然只有短短的数年时间,但凭借着“开放源代码”的东风,它从众多的数据库中脱颖而出,成为PHP的首选数据库。除了因为几乎是免费的这点之外,支持正规的SQL查询语言和采用多种数据类型,能对数据进行各种详细的查询等都是PHP选择MySql的主要原因。

MySql的核心程序采用完全的多线程编程。线程是轻量级的进程,它可以灵活地为用户提供服务,而不过多的系统资源。用多线程和C语言实现的MySql能很容易充分利用CPU。 

MySql有一个非常灵活而且安全的权限和口令系统。当客户与MySql服务器连接时,他们之间所有的口令传送被加密,而且MySql支持主机认证。

参考技术A 写个存储过程判断下
if panduanziduan != 0 then
sql语句
end if;
if panduanziduan = 0 then
sql语句
end if;追问

panduanziduan 是数据中的字段... 你这样的方法就要查询数据然后在来

追答

嗯 先查询出来这个字段再判断 判断里面重新写查询语句

追问

就是闲麻烦才不用这方法的,不过还是谢谢你

参考技术B select * from pre_common_block_item where bid = 4 and case when panduanziduan!=0 then panduanziduan<time() else 1 end order by displayorder ASC LIMIT 0,5追问

我试了,不行纳,不知道是不是我写错

追答

语法上,这句话应该不会报错,我测试过的,
不知道panduanziduan<time() 这个条件会怎样。

本回答被提问者采纳
参考技术C 用case when 嵌套吧。

以上是关于sql语句中如何一个字段对查询出的多个值添加判断条件的主要内容,如果未能解决你的问题,请参考以下文章

sql如何根据一个字段的多个值查询

求SQL语句,一个字段中多个ID,如何对他进行对应的值替换?

sql查询语句如何能把不符合条件的数据也一并查出来

急急急,Sql查询一个字段是不是存在某一个值,怎么写查询语句?

关于sql语句添加where条件问题,用java语句

sql如何判断字段的值是否空值