关于SLQ字段提取问题!

君忱 2008-12-25 09:42:48
表名:cowgz
列名:进出时间
类型:datatime
格式:yyyy-mm-dd hh:mm:ss
请问怎么对比小时,和分钟把值取出来?
我的代码(按小时):
select * from cowgz where substring(convert(varchar(30),进出时间),12,2)='" + this.TextBox1.Text + "'";
为什么取不出来?取出空白记录,表里肯定有对应的记录!
请问convert出的时间格式是哪样的?
是:mm-dd-yyyy hh:mm:ss的吗,为什么取不出来?
它取出的时间小时是24进制,还是12进制的?
还有什么更简单的方法,不用转换数据类型的,怎么取?

...全文
115 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
jinjazz 2008-12-25
  • 打赏
  • 举报
回复
不带世纪数位 (yy) (1)  带世纪数位 (yyyy)  标准  输入/输出 (3)  
-
0 或 100 (1, 2)
默认设置
mon dd yyyy hh:miAM(或 PM)

1
101
美国
mm/dd/yyyy

2
102
ANSI
yy.mm.dd

3
103
英国/法国
dd/mm/yy

4
104
德国
dd.mm.yy

5
105
意大利
dd-mm-yy

6
106 (1)
-
dd mon yy

7
107 (1)
-
mon dd, yy

8
108
-
hh:mm:ss

-
9 或 109 (1, 2)
默认设置 + 毫秒
mon dd yyyy hh:mi:ss:mmmAM(或 PM)

10
110
美国
mm-dd-yy

11
111
日本
yy/mm/dd

12
112
ISO
yymmdd

-
13 或 113 (1, 2)
欧洲默认设置 + 毫秒
dd mon yyyy hh:mm:ss:mmm(24h)

14
114
-
hh:mi:ss:mmm(24h)

-
20 或 120 (2)
ODBC 规范
yyyy-mm-dd hh:mi:ss(24h)

-
21 或 121 (2)
ODBC 规范(带毫秒)
yyyy-mm-dd hh:mi:ss.mmm(24h)

-
126 (4)
ISO8601
yyyy-mm-ddThh:mm:ss.mmm(无空格)

127(6)
带时区 Z 的 ISO8601。
yyyy-mm-ddThh:mm:ss.mmmZ

(无空格)

-
130 (1, 2)
回历 (5)
dd mon yyyy hh:mi:ss:mmmAM

-
131 (2)
回历 (5)
dd/mm/yy hh:mi:ss:mmmAM

jinjazz 2008-12-25
  • 打赏
  • 举报
回复
select convert(varchar(5),getdate(),114)
/*10:16*/
zhuanshen712 2008-12-25
  • 打赏
  • 举报
回复
select datepart(hh,进出时间)as 小时,datepart(mi,进出时间)as 分钟 from 表
选出小时和分钟字段。
jiang_jiajia10 2008-12-25
  • 打赏
  • 举报
回复

select * from cowgz where CONVERT(varchar(100), 进出时间, 20)='" + this.TextBox1.Text + "'";

CONVERT(varchar(100), GETDATE(), 20): 2008-12-25 09:45:47

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧