我有查询: " i" t! b: u5 B+ Y" f% \! dSELECT nameFROM (SELECT name FROM Hist_answerWHERE id_city='34324' AND datetime >= DATE_SUB(CURRENT_DATE,INTERVAL 1 MONTH)UNION ALLSELECT name FROM Hist_internetWHERE id_city='34324' AND datetime >= DATE_SUB(CURRENT_DATE,INTERVAL 1 MONTH)) xGROUP BY name ORDER BY name但是 DATE_SUB 是一个MySQL我需要函数MsSQL 2008的函数 i7 u J7 Q q; D. d
请告诉我怎么用MsSQL 2008从30天内选择数据?2 N5 V$ u. T0 j# W6 l' M# Y
PS: 日期 时间数据类型 smalldatetime; ]& x: c. c( a% d: k6 K5 }- y
. w; i% \1 X4 r4 Z& g 解决方案: , H) L7 z. P8 Q 你应该用的DATEADD是Sql因此,如果你尝试这个简单的选择,你会看到影响 : A- [! Y) t/ W4 T9 g" ZSelect DATEADD(Month,-1,getdate())结果 3 J# \4 {5 o, c9 s- i2013-04-20 14:08:07.177在您的情况下,请尝试此查询 1 r" H* u3 l5 vSELECT nameFROM (SELECT name FROM Hist_answerWHERE id_city='34324' AND datetime >= DATEADD(month,-1,GETDATE())UNION ALLSELECT name FROM Hist_internetWHERE id_city='34324' AND datetime >= DATEADD(month,-1,GETDATE())) xGROUP BY name ORDER BY name