sql server 按日期分组查询

问题描述

sql server 按日期分组查询

各位 大侠,请问这个我弄错了吗,有个字段payment_time,时间格式2015-12-23 19:16:07 ,我要查询把后面时间去掉,变成2015-12-23 这个格式,然后统计每天id数量,我在网上搜索到下面的这个转换日期的代码,我自己添加的count(id),但是不知道为什么不是我想要的结果,哪里不对吗?
SELECT substring(Convert(VARCHAR(30), payment_time, 120),1,10) as 日期 , count(id)
from m_order
group by payment_time

解决方案

group by应该用截掉时间的字符串

解决方案二:

select * from ApplyInfo join Users on ApplyInfo.ApplyMan=Users.UserId where convert(varchar(10),ApplyDate,120)='2008-03-14'--sql server中查询与日期相等的方法。
select * from ApplyInfo join Users on ApplyInfo.App......
答案就在这里:sql server中日期查询

解决方案三:

用的mysql——》


select DATE_FORMAT('2015-12-23 19:16:07','%Y-%m-%d')可以满足你的日期转化。

另外:你的SQL语句可以这样优化:
SELECT DATE_FORMAT(payment_time, '%Y%m%d') , count(id)
from m_order
group by payment_time

这里的日期是一直在增长的,直接转化排序就OK,项目中我都是这样做的,希望能帮到你。

解决方案四:

SELECT substring(Convert(VARCHAR(30), payment_time, 120),1,10) as 日期 , count(id)
from m_order
group by substring(Convert(VARCHAR(30), payment_time, 120),1,10)
这样写可以

时间: 2024-08-08 14:05:56

sql server 按日期分组查询的相关文章

数据-java mysql 按日期分组查询

问题描述 java mysql 按日期分组查询 如在mysql中有张表user 有三条数据 注册时间分别是是2014-11-28,2014-11-28,2014-11-29 那我要怎么分组查询出2014-11-01到2014-11-30的数据,空的也显示 要显示成 count time . . . . 0 2014-11-26 0 2014-11-27 2 2014-11-28 1 2014-11-29 0 2014-11-30 或者在java里面怎么补全 解决方案 告诉你思路,自己写,mysq

MS SQL Server查询优化方法(1)●查询速度慢的原因很多,常见如下几种:

server|速度|优化 MS SQL Server查询优化方法(1) ●查询速度慢的原因很多,常见如下几种: 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存不足 5.网络速度慢 6.查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7.锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)8.sp_lock,sp_who,活动的用户查看,原因是读写竞争资源.9.返回了不必

SQL Server数据库嵌套子查询的使用

很多SQL Server程序员对子查询(subqueries)的使用感到困惑,尤其对于嵌套子查询(即子查询中包含一个子查询).现在,就让我们追本溯源地探究这个问题. 有两种子查询类型:标准和相关.标准子查询执行一次,结果反馈给父查询.相关子查询每行执行一次,由父查询找回.在本文中,我将重点讨论嵌套子查询(nested subqueries)(我将在以后介绍相关子查询). 试想这个问题:你想生成一个卖平垫圈的销售人员列表.你需要的数据分散在四个表格中:人员.联系方式(Person.Contact)

SQL server中多种关键字查询数据

问题描述 SQL server中多种关键字查询数据 比如学生有姓名,学号,班级等列,我可以通过学号查询,也可以通过姓名查询 解决方案 两个办法,一个是首先在代码中判断输入的是全数字还是中文,分别执行不同的查询.或者写在一起:select * from table where 姓名=输入 or 学号=输入 解决方案二: select * from 学生表 where name = '姓名' or No='学号' 解决方案三: 可以使用动态sql拼接比如定义一个@sqltext 根据不同的情况拼接s

Querying Microsoft SQL Server 2012 读书笔记:查询和管理XML数据 2 -使用XQuery 查询XML数据

原文:Querying Microsoft SQL Server 2012 读书笔记:查询和管理XML数据 2 -使用XQuery 查询XML数据 XQuery 是一个浏览/返回XML实例的标准语言. 它比老的只能简单处理节点的XPath表达式更丰富. 你可以同XPath一样使用.或是遍历所有节点,塑造XML实例的返回等. 作为一个查询语言, 你需要一个查询处理引擎. SQL Server 数据库通过XML数据类型方法的T-SQL 语句来处理XQuery. SQL Server 并不支持所有的X

第1周 SQL Server 如何执行一个查询

原文:第1周 SQL Server 如何执行一个查询         大家好,欢迎来到第1周的SQL Server性能调优培训.在我们进入SQL Server性能调优里枯燥难懂的细节内容之前,我想通过讲解SQL Server如何执行一个查询来建立基础.这个部分非常重要,因为接下来的培训中我们会以这些概念来加深我们对SQL Server的认识. 当我们执行一个查询时,在SQL Server中最重要的组件有哪些,下面这张图片可以给大家一个概观的认识.         可以看到,SQL Server内

使用SQL Server数据库嵌套子查询的方法_MsSql

很多SQL Server程序员对子查询(subqueries)的使用感到困惑,尤其对于嵌套子查询(即子查询中包含一个子查询).现在,就让我们追本溯源地探究这个问题.  有两种子查询类型:标准和相关.标准子查询执行一次,结果反馈给父查询.相关子查询每行执行一次,由父查询找回.在本文中,我将重点讨论嵌套子查询(nested subqueries)(我将在以后介绍相关子查询).  试想这个问题:你想生成一个卖平垫圈的销售人员列表.你需要的数据分散在四个表格中:人员.联系方式(Person.Contac

位置-sql server like 字符串分割查询

问题描述 sql server like 字符串分割查询 SQL server like模糊查询 查询条件为一个带分隔符的字符串,且字符串为变量,长度不定,并且字符串中 每个分隔符后的字符的位置是随机的,就是每次查询时输入的字符串中分隔符后的字符是随机的,例如:第一次查询时条件是: ATT13]GBC]GBC-A-216]SAF-ATT13]VNU01]SAF-ATT13] :下一次查询时条件可能 是:VNU01]GBC] 数据库表 test id responses 1 ATT13]GBC]G

SQL Server数据库按百分比查询出表中的记录数_MsSql

SQL Server数据库查询时,能否按百分比查询出记录的条数呢?答案是肯定的.本文我们就介绍这一实现方法. 实现该功能的代码如下: create procedure pro_topPercent ( @ipercent [int] =0 --默认不返回 ) as begin select top (@ipercent ) percent * from books end 或 create procedure pro_topPercent ( @ipercent [int] =0 ) as be