平常经常会求一段时间内的每一天统计数据,或者每一时点的统计数据.但是mysql本身是没有直接获取时点列表的函数或表.下面是自己用到的一些方法,利用临时变量和一个已存在的比较多数据(这个需要根据实际情况决定)的表做关联得到时点列表.希望对大家有所帮助. sql中用到的一些关键数据 #t_table表是系统上已存在的一个有比较多数据的表 一个月的每一天 #2017年7月份的每一天 SET @beginDate='2017-07-01'; SET @maxDate ='2017-07-31'; DAY
id sid cid 1 1 12 1 23 2 1 以sid分组,最后取cid最大的那一条,以上要取第2.3条 1 方法一: select * from (select * from table order by cid desc) as a group by a.sid 方法二: select a.* from table as a where cid = (select max(cid) from table where a.sid = sid) 方法三: select a.* from
1.mysql查看表字段和字段描述 SELECT column_name, column_comment FROM information_schema.columns WHERE table_schema ='hsex_dev_2271' AND table_name = 'channel_trade_detail'; 结果:
今天遇到个需求如下: 查询一下新的业务是否正常入库,遇到的问题是新旧业务用的是同一个字段标识,唯一不同的是字段里内容的长度不同 查询方式如下,mysql按表字段内容长度排序 SELECT * FROM `order_xxx_sku_info` order by length(`sub_XXX_id`) DESC
示例: 查询最近一周12:30分到13:00这段时间内的订单量: SELECT * FROM T_ORDER O WHERE O.CREATEDATETIME BETWEEN SYSDATE AND SYSDATE AND TO_CHAR(O.CREATEDATETIME, 'hh24:mi:ss') BETWEEN '12:30:00' AND '13:00:00' 查询某段日期内某个时间段的订单量: SELECT * FROM T_ORDER O WHERE O.CREATEDATETIME