MariaDB社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3240|回复: 2
打印 上一主题 下一主题

帮我看看MYSQL里的IF语句

[复制链接]
跳转到指定楼层
1#
发表于 2009-9-1 15:06:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 areming 于 2009-9-1 15:33 编辑

想在MYSQL里做一个判断查询
学生姓名表 T
学生详细信息表 S
条件 姓名,年龄,姓别,入学时间
功能:先判断是否输入了姓名
是就执行:1
不是就判断是否输入了年龄,是就执行:2
不是就判断是否输入了姓别,是就执行:3
不是就判断是否输入了入学时间,是就执行:4
都没填就全部查询
我写的语句如下
select * from s
where
if(T.姓名!=null)
{
//1
   select * from s where s.姓名 in(select 姓名 from T where T.姓名=姓名)
}
else
{
   if(S.年龄!=null)
   {
//2
select * from s where S.年龄=年龄
   }
   else
   {
if(S.姓别!=null)
{
  //3
    select * from s where S.姓别=姓别
}
else
{
    if(S.入学时间!=null)
    {
   //4
  select * from s where S.入学时间=入学时间
    }
    else
    {
   //5
     select * from s where s.姓名 in(select 姓名 from T where T)
           }
}
   }
}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 顶 踩
2#
 楼主| 发表于 2009-9-1 15:07:59 | 只看该作者
快帮帮我吧,谢谢大家了,在线等
3#
发表于 2009-9-18 16:38:31 | 只看该作者
这些输入,应该交给具体的程序比如php去做效率更高吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|MariaDB社区 ( 京ICP备07012489号    |
业务联系: QQ:48474881; 邮箱: 48474881@qq.com; 电话:13911732319
声明:本站部分文章是网友转载,若未经作者同意或署名有误,请联系网站管理员。

GMT+8, 2024-9-20 00:47 , Processed in 0.086115 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表