求救:在PB的SQL语句中如何比较Datetime和Time型

neomeng 2001-06-21 05:36:00
例如:SELECT SUM(hourvalue.wphour) FROM hourvalue WHERE ( hourvalue.ttuid = 1003 ) AND ( hourvalue.itemdatetime between :time1 AND :time2 );
其中time1和time2是Time型的变量。hourvalue.itemdatetime是DateTime型的字段。
数据库是SQL Server7 。执行结果老是NULL。真不知道该怎么办好?急!!!
...全文
294 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
l_hw 2001-06-22
  • 打赏
  • 举报
回复
啊...你是比较时间呀,真是大意不得
neomeng 2001-06-22
  • 打赏
  • 举报
回复
我给二位加分了。谢谢。:)
neomeng 2001-06-21
  • 打赏
  • 举报
回复
谢谢,解决了。
convert(char(10),hourvalue.itemdatetime,102) between :time1 AND :time2
我查了资料。不是102,应该是108,就对了。呵呵。
neomeng 2001-06-21
  • 打赏
  • 举报
回复
结果好像还是不对啊。
neomeng 2001-06-21
  • 打赏
  • 举报
回复
SELECT SUM(hourvalue.wphour) FROM hourvalue WHERE ( hourvalue.ttuid = 1003 ) AND (convert(char(10),hourvalue.itemdatetime,102) between :time1 AND :time2 )
是这样吗?
l_hw 2001-06-21
  • 打赏
  • 举报
回复
先把time1,time2 转换成string型,再改你的原句:
convert(char(10),hourvalue.itemdatetime,102) between :time1 AND :time2
neomeng 2001-06-21
  • 打赏
  • 举报
回复
以为mssql 中没有Time型的字段,但是我的程序要得到例如每天的一个时间段的统计数据。
pbsql 2001-06-21
  • 打赏
  • 举报
回复
我不明白的是你的字段为Datetime型为什么检索参数却要用Time型?
neomeng 2001-06-21
  • 打赏
  • 举报
回复
需要在SQL语句中直接执行出结果。
neomeng 2001-06-21
  • 打赏
  • 举报
回复
这是在PB脚本里的SQL。
1、CAST(expression AS data_type)
2、CONVERT (data_type[(length)], expression [, style])
上面的放在什么地方啊?
pbworm 2001-06-21
  • 打赏
  • 举报
回复
看看sql的online book吧,里面有详细的说法。
pbworm 2001-06-21
  • 打赏
  • 举报
回复
1、CAST(expression AS data_type)
2、CONVERT (data_type[(length)], expression [, style])
Iwant 2001-06-21
  • 打赏
  • 举报
回复
哥们,在 mssql 7.0 的字段 类型中有 Time 类型吗???
应该没有吧。

你的 Sql 写错了啊。
neomeng 2001-06-21
  • 打赏
  • 举报
回复
请问怎么转换?在哪儿块?
pbworm 2001-06-21
  • 打赏
  • 举报
回复
老大,转换一下类型不就可以了吗!

1,079

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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