当前位置:首页 » 编程语言 » sql查询日期

sql查询日期

发布时间: 2022-01-26 07:32:29

A. sql 查询日期 语句

select format(cdate,'yyyy-MM-dd'),count(*) as num from tablename group by format(cdate,'yyyy-MM-dd')

B. SQL语句查询特定时间段的数据怎么写

SQL服务器:

Select*fromtablewhere'2008-7-1'和'2008-12-31'

访问

从表中选择发生日期>#2008-7-1#和发生日期<#2008-12-31#

就是这样:注意,SQLserver中的日期和访问有一点不同。

(2)sql查询日期扩展阅读:

SQL查询日期语句

Select*fromShopOrderwheredatediff(week,ordTime,getdate()-1)=0//查询第一年的日期

Select*fromShopOrder,其中datediff(day,ordTime,getdate()-1)=0//查询当天的所有数据

SELECT * FROM A where datediff(d,datetime,getdate()) <=30 //前30天

SELECT * FROM A WHERE DATEDIFF(m, shijian, GETDATE()) <=1 //上个月

搜索当天记录的其他方法:

SELECT*

FROMj_GradeShop

其中(GAddTimeBETWEENCONVERT(datetime,LEFT(GETDATE(),10)+'00:00:00.000'))

并转换(datetime,LEFT(GETDATE(),10)+'00:00:00.00.000')+1)

由GAddTime指定的订单

C. SQL查询日期的年份

要返回正确的记录,你需要适用日期和时间范围。有不止一种途径可以做到这一点。例如,下面的这个SELECT 语句将能返回正确的记录: SELECT * FROM weblog WHERE entrydate>=”12/25/2000” AND entrydate<”12/26/2000” 这个语句可以完成任务,因为它选取的是表中的日期和时间大于等于12/25/2000 12:00:00:000AM并小于12/26/2000 12:00:00:000AM的记录。换句话说,它将正确地返回2000年圣诞节这一天输入的每一条记录。 另一种方法是,你可以使用LIKE来返回正确的记录。通过在日期表达式中包含通配符“%”,你可以匹配一个特定日期的所有时间。这里有一个例子: SELECT * FROM weblog WHERE entrydate LIKE ‘Dec 25 2000%’ 这个语句可以匹配正确的记录。因为通配符“%”代表了任何时间。

D. sql如何按日期中的月份查询

sql按日期中的月份查询如下:

SQL Server

select * from [data] where DATEPART(m,[date])=2

Access

select * from [data] where DATEPART('m',[date])=2

说明:

DATEPART(datepart,date)

返回表示指定日期的指定部分的整数

datepart 要取得的日期部分

- m 表示月份,d表示日,yyyy表示年

date 日期表达式

举例:

--以2013-12-10 12:56:55为例

--convert(nvarchar(10),CreateDate,120) => 2013-12-10

--DATEPART(month,CreateDate) => 12

--DATEPART(year,CreateDate) => 2013

--月

select datepart(MONTH,'2013-06-08')

select datepart(mm,'2013-06-08')

select datepart(m,'2013-06-08')

(4)sql查询日期扩展阅读:

相关函数

SQL Aggregate 函数

SQL Aggregate 函数计算从列中取得的值,返回一个单一的值。

有用的 Aggregate 函数:

AVG() - 返回平均值

COUNT() - 返回行数

FIRST() - 返回第一个记录的值

LAST() - 返回最后一个记录的值

MAX() - 返回最大值

MIN() - 返回最小值

SUM() - 返回总和

SQL Scalar 函数

SQL Scalar 函数基于输入值,返回一个单一的值。

有用的 Scalar 函数:

UCASE() - 将某个字段转换为大写

LCASE() - 将某个字段转换为小写

MID() - 从某个文本字段提取字符

LEN() - 返回某个文本字段的长度

ROUND() - 对某个数值字段进行指定小数位数的四舍五入

NOW() - 返回当前的系统日期和时间

E. sql 根据日期查询

不知道你什么数据库

sqlserver的

只做参考,因为没有处理各个月的天数,只是默认每一个月都是30天

如果你要精确的,只能自己建立基础维护表来关联了

selectnumberasid,t2.cont
frommaster..spt_valuest1leftjoin(selecttime,sum(price)cont
fromtest
groupbytime)t2ont1.number=day(t2.time)
wheret1.type='P'
ANDt1.numberbetween1and30

F. sql server 日期范围查询

SELECT * FROM 表明 WHERE 日期字段名 BETWEEN '20130101' AND '20130130'

或者:

SELECT * FROM 表明 WHERE 日期字段名 BETWEEN CONVERT(datetime,'2013-01-01',120) AND CONVERT(datetime,'2013-01-30',120)

(6)sql查询日期扩展阅读:

注意事项

在写按时间段查询的sql语句的时候 一般我们会这么写查询条件:

where date>='2010-01-01' and date<='2010-10-1'。

但是在实执行Sql时些语句会转换成这样:

where date>='2010-01-01 0:00:00' and date<='2010-10-1:0:00:00',再看这个条件的话,就会有些明白,那就是'2010-10-1 0:00:00' 之后的数据例如('2010-10-1:08:25:00')查不到,也就是说2010-10-1的数据查不到。

修改查询条件为:

where date>='2010-01-01' and date<='2010-10-1 23:59:59' 或 where date>='2010-01-01' and date<='2010-10-2'。

某个表某个字段是Datetime型 以"YYYY-MM-DD 00:00:00" 存放

G. SQL 日期型查询

CaseSql="where month(开始日期)="&month(Request("开始日期"))&" and day(开始日期)>=1 and day(开始日期)<="&day(Request("开始日期"))

或者如果不用日期的,只用月份的

“where month(开始日期)=”&month(Request("开始日期"))

H. 用SQL语言怎样查询带日期的数据

SQL SERVER 这么写:

SELECT
*
FROM
图书表
WHERE
YEAR( 出版日期 ) = 2010

Oracle 这么写:

SELECT
*
FROM
图书表
WHERE
TO_CHAR( 出版日期, 'YYYY' ) = '2010'

I. SQL中查询日期语句

SQL SERVER:

用函数datepart处理就可以了,示例:
select datepart(weekday,getdate()) as 周内的第几日

select datepart(week,getdate()) as 年内的第几周

select datepart(quarter,getdate()) as 年内的第几季

周内的第几日
-----------
5

(所影响的行数为 1 行)

年内的第几周
-----------
34

(所影响的行数为 1 行)

年内的第几季
-----------
3

(所影响的行数为 1 行)

J. SQL 如何查询日期在一定范围内的数据

select * from 表 where 日期字段>='开始日期' and 日期字段<='截止日期' and convert(char(8),日期字段,108)>='开始时间' and convert(char(8),日期字段,108)<='截止时间'。

SELECT * FROM 表明 WHERE 日期字段名 BETWEEN '20130101' AND '20130130'。

例如:

select * from tb1 where dDate>='2010-11-05' and dDate<='2010-11-15'
and convert(char(8),dDate,108)>='8:00:00' and convert(char(8),dDate,108)<='9:00:00'.

select * from table1where year(d)=2010 and month(d)=7 and day(d) between 1 and 31
and (Datepart(hour,d)>=22 or Datepart(hour,d)<6)

(10)sql查询日期扩展阅读:

SQL查询日期:

今天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=0

昨天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=1

7天内的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())<=7

30天内的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())<=30

本月的所有数据:select * from 表名 where DateDiff(mm,datetime类型字段,getdate())=0

本年的所有数据:select * from 表名 where DateDiff(yy,datetime类型字段,getdate())=0

参考资料:SQL_网络

热点内容
在香港怎么买安卓手机 发布:2024-11-16 03:15:37 浏览:762
存储sp 发布:2024-11-16 03:14:08 浏览:849
电视机存储功能 发布:2024-11-16 03:12:50 浏览:869
极品飞车17安卓怎么安装 发布:2024-11-16 03:12:13 浏览:317
长春java 发布:2024-11-16 03:10:47 浏览:577
性价比高的台式电脑怎么配置 发布:2024-11-16 03:04:58 浏览:632
软件测试学python 发布:2024-11-16 02:55:39 浏览:563
sql2008数据同步 发布:2024-11-16 02:33:46 浏览:928
sql2008sa密码 发布:2024-11-16 02:33:45 浏览:199
pr清缓存 发布:2024-11-16 02:31:28 浏览:656