求一条多个条件的SQL语句

sky_1989 2009-08-01 12:57:55
select * from PREPAREMEETING where (STARTDATE>=to_date('2009-07-29','YYYY-MM-DD') and STARTDATE<=to_date('2009-08-11','YYYY-MM-DD'))
or (ENDDATE>=to_date('2009-07-29,'YYYY-MM-DD') and ENDDATE<=to_date('2009-08-11','YYYY-MM-DD') )
or (STARTDATE<=to_date('2009-07-29,'YYYY-MM-DD') and ENDDATE>=to_date('2009-08-11','YYYY-MM-DD'))
SQL语句不支持这样写
求高手解决!!
...全文
87 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
feixianxxx 2009-08-01
  • 打赏
  • 举报
回复
to_date这个函数干嘛的?
feixianxxx 2009-08-01
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 sky_1989 的回复:]
谢谢7楼
呵呵,果然是写的时候不小心
本来就是用oracle
[/Quote]
.......
sky_1989 2009-08-01
  • 打赏
  • 举报
回复
谢谢7楼
呵呵,果然是写的时候不小心
本来就是用oracle
souperstar 2009-08-01
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jinjazz 的回复:]
你这是oracle语法,sql直接STARTDATE>='2009-07-29'这样
[/Quote]
up~~
SQL77 2009-08-01
  • 打赏
  • 举报
回复
[Quote=引用楼主 sky_1989 的回复:]
select * from PREPAREMEETING where (STARTDATE>=to_date('2009-07-29','YYYY-MM-DD') and STARTDATE <=to_date('2009-08-11','YYYY-MM-DD'))
      or (ENDDATE>=to_date('2009-07-29,'YYYY-MM-DD') and ENDDATE <=to_date('2009-08-11','YYYY-MM-DD') )
      or (STARTDATE <=to_date('2009-07-29,'YYYY-MM-DD') and ENDDATE>=to_date('2009-08-11','YYYY-MM-DD'))
SQL语句不支持这样写
求高手解决!!
[/Quote]
晕了还得用SQL呀,参考楼上
feixianxxx 2009-08-01
  • 打赏
  • 举报
回复
--又或者

select * from PREPAREMEETING 
where (datediff(dd,'2009-07-29',STARTDATE)>=0 and datediff(dd,'2009-08-11',STARTDATE)<=0)
or (datediff(dd,'2009-07-29',ENDDATE)>=0 and datediff(dd,'2009-08-11' ,ENDDATE)<=0 )
or (datediff(dd,'2009-07-29',STARTDATE)<=0 and datediff(dd,'2009-08-11' ,ENDDATE)>=0)
SQL77 2009-08-01
  • 打赏
  • 举报
回复
select * from PREPAREMEETING where (STARTDATE>=to_date('2009-07-29','YYYY-MM-DD') and STARTDATE <=to_date('2009-08-11','YYYY-MM-DD'))
or (ENDDATE>=to_date('2009-07-29','YYYY-MM-DD') and ENDDATE <=to_date('2009-08-11','YYYY-MM-DD') )
or (STARTDATE <=to_date('2009-07-29','YYYY-MM-DD') and ENDDATE>=to_date('2009-08-11','YYYY-MM-DD'))
楼主少了几个标点符号
sdhdy 2009-08-01
  • 打赏
  • 举报
回复
select * from PREPAREMEETING where (STARTDATE>='2009-07-29'and STARTDATE <='2009-08-11')
or (ENDDATE>='2009-07-29' and ENDDATE <='2009-08-11')
or (STARTDATE <='2009-07-29' and ENDDATE>='2009-08-11')
feixianxxx 2009-08-01
  • 打赏
  • 举报
回复
--or
select * from PREPAREMEETING 
where (convert(varchar(10),STARTDATE,120) between '2009-07-29'and '2009-08-11')
or (convert(varchar(10),ENDDATE,120) between'2009-07-29' and '2009-08-11' )
or (convert(varchar(10),STARTDATE,120) <='2009-07-29' and convert(varchar(10),ENDDATE,120)>='2009-08-11')
feixianxxx 2009-08-01
  • 打赏
  • 举报
回复
select * from PREPAREMEETING 
where (STARTDATE between '2009-07-29'and '2009-08-11')
or (ENDDATE between'2009-07-29' and '2009-08-11' )
or (STARTDATE <='2009-07-29' and ENDDATE>='2009-08-11')
黄_瓜 2009-08-01
  • 打赏
  • 举报
回复
to_date
jinjazz 2009-08-01
  • 打赏
  • 举报
回复
你这是oracle语法,sql直接STARTDATE>='2009-07-29'这样

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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