• 全部
  • VBS
  • .NET技术
  • VBA
  • VB网络编程
  • VB多媒体
  • VB数据库
  • VB控件
  • VB COM/DCOM
  • VB基础类
  • VB API
  • 问答

求一个SQL语句,或者解决方法,关于datetime类型的

synchen 2005-02-26 10:59:42
程序功能如下:
实现设备的维修记录管理

问题:
要根据以前维修任务的完成时间,区分成白班完成的任务 和 夜班完成的任务
维修任务的完成时间,是 datetime 类型的字段,datetime 大家知道是 2005-2-26 8:00:00
我怎么样才能把 早上6:00 到 18:00的记录都给显示出来,
大家最好能用SQL语句解决,如果不行,那我如何利用DATASET筛选记录,求答案简单实用,谢谢哥们儿
...全文
95 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
xdwlb 2005-02-27
select * from tableName where datepart(hour, FinishedTime) between 6 and 18正确
回复
l3300 2005-02-27
接分
回复
CSharpProgrammer 2005-02-27
楼上正解.接分!
回复
synchen 2005-02-27
谢谢,很好,结帖
回复
hamadou 2005-02-27
select * from tableName where (datepart(hour, FinishedTime) between 6 and 18 )
and (datepart(date,finishedtime) = "20050227")
回复
FJGoodGood 2005-02-26
假设维修任务完成时间字段名是:FinishedTime

select * from tableName where datepart(hour, FinishedTime) between 6 and 18
回复
wangsaokui 2005-02-26
substring(Convert(varchar, a.send_time, 20), 1,10)" & _
" between '" & Session("startdate") & "' and '" & Session("enddate") & "'"

这是日期的,时间的把substring改改就可以了,startdate和enddate用字符

日期格式可以用Convert来更改,不同格式参考如下(上面那个20的含义就是yyyy-MM-dd HH:mm:ss)
Without century (yy) With century (yyyy)
Standard
Input/Output**
- 0 or 100 (*) Default mon dd yyyy hh:miAM (or PM)
1 101 USA mm/dd/yy
2 102 ANSI yy.mm.dd
3 103 British/French dd/mm/yy
4 104 German dd.mm.yy
5 105 Italian dd-mm-yy
6 106 - dd mon yy
7 107 - Mon dd, yy
8 108 - hh:mm:ss
- 9 or 109 (*) Default + milliseconds mon dd yyyy hh:mi:ss:mmmAM (or PM)
10 110 USA mm-dd-yy
11 111 JAPAN yy/mm/dd
12 112 ISO yymmdd
- 13 or 113 (*) Europe default + milliseconds dd mon yyyy hh:mm:ss:mmm(24h)
14 114 - hh:mi:ss:mmm(24h)
- 20 or 120 (*) ODBC canonical yyyy-mm-dd hh:mi:ss(24h)
- 21 or 121 (*) ODBC canonical (with milliseconds) yyyy-mm-dd hh:mi:ss.mmm(24h)
- 126(***) ISO8601 yyyy-mm-dd Thh:mm:ss:mmm(no spaces)
- 130* Kuwaiti dd mon yyyy hh:mi:ss:mmmAM
- 131* Kuwaiti dd/mm/yy hh:mi:ss:mmmAM
回复
wangsaokui 2005-02-26
数据库不同SQL语句也不同的
SQLSERVER可以用DATEPART

Syntax
DATEPART ( datepart , date )

Arguments
datepart

Is the parameter that specifies the part of the date to return. The table lists dateparts and abbreviations recognized by Microsoft® SQL Server™.

Datepart Abbreviations
year yy, yyyy
quarter qq, q
month mm, m
dayofyear dy, y
day dd, d
week wk, ww
weekday dw
hour hh
minute mi, n
second ss, s
millisecond ms


SELECT DATEPART(month, 你的时间列) FROM .....

或者between ..... and .....

" between '" & Session("startdate") & "' and '" & Session("enddate") & "'"
回复
发帖
VB
创建于2007-09-28

1.6w+

社区成员

VB技术相关讨论,主要为经典vb,即VB6.0
申请成为版主
帖子事件
创建了帖子
2005-02-26 10:59
社区公告
暂无公告