Mysql 中 if 的 用法
2016-01-15 19:58
579 查看
在使用 mysql 的时候,有时候会需要用mysql去做判断。 在做判断的时候我们会用到
下面是例子:
CREATE TABLE `user_info` (
`id` int(20) NOT NULL AUTO_INCREMENT,
`user_name` varchar(20) DEFAULT NULL,
`sex` int(1) DEFAULT NULL COMMENT '1 : 男 ; 2 : 女',
`class` varchar(20) DEFAULT NULL COMMENT '1:一班 ; 2: 二班 ; 3; 三班 ; 4 四班',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;
sql : SELECT *,IF(ui.sex=1,"男","女") userSex from user_info ui ;
查询结果:
1 zhangsan
1 1
男
2 李四 2
3 女
3 王五 2
4 女
4 赵六 1
2 男
5 mayun
1 2 男
6 dongmingzhu
2 3 女
if 语句适合这样的只有两种状态的时候使用。
如果要是有多重状态,可以用 case when
下面是例子:
CREATE TABLE `user_info` (
`id` int(20) NOT NULL AUTO_INCREMENT,
`user_name` varchar(20) DEFAULT NULL,
`sex` int(1) DEFAULT NULL COMMENT '1 : 男 ; 2 : 女',
`class` varchar(20) DEFAULT NULL COMMENT '1:一班 ; 2: 二班 ; 3; 三班 ; 4 四班',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;
sql : SELECT *,IF(ui.sex=1,"男","女") userSex from user_info ui ;
查询结果:
1 zhangsan
1 1
男
2 李四 2
3 女
3 王五 2
4 女
4 赵六 1
2 男
5 mayun
1 2 男
6 dongmingzhu
2 3 女
if 语句适合这样的只有两种状态的时候使用。
如果要是有多重状态,可以用 case when
相关文章推荐
- mysql关联查询
- 使用第三方工具Xtrabackup进行MySQL备份
- 使用第三方工具Xtrabackup进行MySQL备份
- mysql常见错误码
- Red Hat 和Cent OS 低版本安装mysql
- lamp编译安装与参数
- Cmake编译安装mysql
- mysql 主从复制
- MySQLdb模块用法
- mysql连接查询和in的效率取舍
- 彻底删除mysql-尤其是最后最后一步出现问题
- mysql约束
- MySQL的FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别
- mysql批量生成修改表和列注释语句
- MySQL 5.6 root密码丢失,使用mysqld --skip-grant-tables
- mysql概要(七)表字段管理,字段的增删改
- MySQL 中文显示乱码
- mysql_explain
- MapReduce输出到MySQL编码错误解决
- mysql概要(六)连接