sql语句:表DATA中有time=2016⼀9⼀1和name=张三两个字段,用什么语句查询张三在2016⼀9⼀1日期内的数据。

2025-03-23 15:56:46
推荐回答(2个)
回答1:

方案一:使用时间范围

语句写法:

1).

Select * From DATA Where Name='张三' And time>='2016/9/1' And time<'2016/9/2'

2).

Select * From DATA Where Name='张三' And time between '2016/9/1' And '2016-09-01 23:59:59.997' --因为between  And  等于 【列 >=值  And <= 值】 所以後面一个值不能再是9月2号了

方案二:把时间转换成日期

语句写法:

1).

Select * From DATA Where Name='张三' And Cast(time as date) ='2016/9/1'

2).

Select * From DATA Where Name='张三' And Convert(date ,time) ='2016/9/1'

注意:'2016/9/1'虽然是字符串,但在sql匹配时会根据要匹配的列自动转换为相应类型来匹配,若给定字符串格式不是时间,譬如:'2016/9/1 qwertyui' 数据库会提醒语句错误,'2016/9/1' 你也可以转换後再来匹配 例如:time>=Cast('2016/9/1' as date)

回答2:

select * from DATA
where time='2016/9/1' and name='张三'