-
怎样只用一条Select语句实现该规则下的排序?5
我现在要写一条查询的SQL语句,试了很长时间还是没写出来,现求各位帮忙了~
假设有如下表格t_context,其中type共有A、B、C种类型,优先级依次为B>A>C,现在要查询该表格中的所有数据,不过须按如下规则排序:
1、类型为B的排在第一,若有多条则按时间递减;
2、类型为A的排在第二,若有多条则按时间递减;
3、剩下的则按时间递减即可。
id type date context 1 C xxxx-xx-xx xx:xx:xx ... 2 C xxxx-xx-xx xx:xx:xx ... 3 A xxxx-xx-xx xx:xx:xx ... 4 C xxxx-xx-xx xx:xx:xx ... 5 B xxxx-xx-xx xx:xx:xx ... 6 A
xxxx-xx-xx xx:xx:xx ... 怎样用一条select语句实现这种规则的排序结果?
2012年10月23日 15:59
相关推荐
再来回顾一下SQL语句中的select语句的语法: Select 语句的基本语法: Select <列的集合> from <表名> where <条件> order by <排序字段和方式> 如果要对查询结果按某个字段排序,则要使用order by 子句...
13、说明:一条sql 语句搞定数据库分页 select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段 具体实现: ...
在一条SELECT语句中,如果不使用ORDER BY子句,结果中行的顺序是不可预料的。使用ORDER BY子句后可以保证结果中的行按一定顺序排列。 语法格式: ORDER BY {列名 | 表达式 | 列编号} [ASC | DESC] , ... 说明:ORDER...
13、说明:一条sql 语句搞定数据库分页 select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段 具体实现: ...
13、说明:一条sql 语句搞定数据库分页 select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段 具体实现: ...
13、说明:一条sql 语句搞定数据库分页 select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段 14、说明:...
SQL查询篇第6章 简单的SELECT语句查询 6.1 查询的基本结构 6.1.1 了解SELECT语句 6.1.2 SELECT语句的语法格式 6.1.3 SELECT语句的执行步骤 6.2 简单的查询语句 6.2.1 查询表中指定的字段 6.2.2 查询所有的字段 6.2.3...
13、说明:一条sql 语句搞定数据库分页 select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段 具体实现: ...
compute进行汇总前面是查询的结果,后面一条结果集就是汇总的信息。compute子句中可以添加多个汇总表达式,可以添加的信息如下: a、 可选by关键字。它是每一列计算指定的行聚合 b、 行聚合函数名称。包括sum、...
下策——查询出结果后将时间排序后取第一条 select * from a where create_time<="2017-03-29 19:30:36" order by create_time desc limit 1 这样做虽然可以取出当前时间最近的一条记录,但是一次查询需要将表...
#删除某一条记录(行) delete from 表名 [where 条件] [order by 列名] [Limit 删除的行数rowNum]; 删除满足条件的按列名排序后的所有记录的第rowNum行 #排序 select 列名 from 表名 order by 列名 ...
熟练掌握用SELECT语句实现简单的单表查询。掌握SELECT子句、FROM子句、WHERE子句及ORDER BY 子句的用法。 二、实验原理 用SELECT语句实现简单的单表查询。在SELECT子句中用TOP关键字来限制返回到结果集中的记录数目...
中等难度笔试题,包括select / insert / update / delete 语法应用 多表联合查询,排序、分组等功能运用 包括但不限于MySQL,也可推广至Oracle、DB2等常见关系型数据库 考验的包括基本的CRUD水平,以及边界情况的...
Source参数可以是一个Command对象名称、一段SQL命令、一个指定的数据表名称或是一个Stored Procedure。假如省略这个参数,系统则采用Recordset对象的Source属性。 ActiveConnection Recordset对象可以通过...
语句: 代码如下:select * from [User] order by [Password] desc,Id asc在一个条件重复的情况下,使用第二个条件排序如下: 注意这里的第 14,15条记录(在Password相同的情况下,根据Id排序)语句: 代码如下:...
MySql的用户管理是通过 User表来实现的,添加新用户常用的方法有两个,一是在User表插入相应的数据行,同时设置相应的权限;二是通过GRANT命令创建具有某种权限的用户。其中GRANT的常用用法如下: grant all on mydb...
20.Count 查询有多少条数据 21.Max 查询某一列最大值 22.Min 查询某一列最小值 23.Avg 查询某一列的平均值 24.Sum 查询某一列的总和 25.分组查询 group by 列 26.分组条件查询 having 查询平均年龄大于...
9.关于查询语句的SELECT子句为SELECT A,B,C *D,则不能使用的GROUP BY子句是(GROUP BY A) 10.建立索引的优点之一是(保证数据的唯一性、加快数据检索速度、加速表与表之间的连接、减少查询中分组和排序的时间、提高...
SQL实现表里数据按一定顺序排序后,按某几个字段分组后相邻两行数据实现加减乘除运算。 思路: 1:先把表数据分组排序后打上序号标签 2:根据需求把标签字段加/减一 上代码: select distinct a.phone,from_unix...
MySQL随机查询出一条记录: 代码如下: — 下面的查询语句效率高,不要使用 SELECT * FROM table1 ORDER BY rand() LIMIT 1 来查询 SELECT * FROM table1 WHERE id=(SELECT id FROM table1 ORDER BY rand() LIMIT 1)...