关于order by后面接条件查询
来源:互联网 发布:java最小公倍数 编辑:程序博客网 时间:2024/05/16 09:46
适用场景,如表tab_a 有三个字段,
如果field1非空则按升序排列,
如果field1是空再排field2,
如果 field2非空升序排列,
如果field2是空再排field3,
如果field3非空则升序排列,
如果field3是空。。。。。。。。
例子1 排序boolean类型
CREATE TABLE `tab_b` (
`field` varchar(255) default NULL,
`id` int(11) default NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `tab_b` VALUES ('1', 'ture');
INSERT INTO `tab_b` VALUES ('2', 'ture');
INSERT INTO `tab_b` VALUES ('3', 'false');
INSERT INTO `tab_b` VALUES ('4', 'false');
SELECT * from TAB_B ORDER BY field='true' desc
注意:ORDER by 后接的字段如果是boolean属性,则false比ture ‘大’!!!!!
########################################################
DROP TABLE IF EXISTS `tab_a`;
CREATE TABLE `tab_a` (
`id` int(11) NOT NULL,
`field3` int(11) default NULL,
`field2` int(11) default NULL,
`field1` int(11) default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `tab_a` VALUES ('1', '1', '1', '1');
INSERT INTO `tab_a` VALUES ('2', '2', '2', '2');
INSERT INTO `tab_a` VALUES ('3', '3', '3', null);
INSERT INTO `tab_a` VALUES ('4', '4', null, null);
INSERT INTO `tab_a` VALUES ('5', '5', '5', null);
INSERT INTO `tab_a` VALUES ('6', null, null, null);
INSERT INTO `tab_a` VALUES ('7', null, null, null);
INSERT INTO `tab_a` VALUES ('8', '8', null, null);
SELECT * FROM TAB_A ORDER BY
field1='' desc , field1 asc,
field2='' desc , field2 asc,
field3='' desc ,field3 asc
此处field1='' 可以看成boolean排序 desc 排序,field1=''为真的排在下面(因为看上面"注意"),否则排在上面(即field1!='');
而后面的field1 asc相当于排序field1!=''数据,依次排序field2,field3..........
- 关于order by后面接条件查询
- 关于order by后面不能使用参数传递值问题。
- 关于 联合查询 UNION 和Order by
- 关于子查询中的order by子句
- ORDER BY排序查询
- order by 多个条件
- order by 多个条件
- order by 多个条件
- order by 多个条件
- order by 多条件排序
- order by后面加常量是什么意思?
- 关于order by 在子查询中能否使用
- 关于order by 在子查询中能否使用
- 关于MySQL ORDER BY
- 关于ORDER BY
- SQL查询排序ORDER BY
- 数据查询(order by)
- order by newid() 随机查询
- request,session,application三者关系<转>
- 右击图标很慢的解决办法
- Android 多线程断点续传下载 一
- hibernate 左连接 查询并取值
- POJ Moving Tables
- 关于order by后面接条件查询
- ORACLE SQLLOADER使用点滴
- 普通java类中获取bean
- 通过maven命令手动安装jar到本地仓库
- 把spring源码导入到eclipse(sts)中
- String类和StringBuffer类的主要差别
- hibernate mysql 倒序排列 并分页(取前n条记录)
- cc2531电源管理和节能
- ios交叉编译参数