我有两个包含这些列的表:
表1 :
ID , INT
NAME, NVARCHA
ROLL, INT
表2 :
ID, INT
NAME_ID, INT
REAL_DATE, Date
H7_00, BIT
H8_00, BIT
我希望得到一份H7_00这样的名字列表,为期3个月。
Real_Date | Name| Name | Name | Name | Name | Name | Name |Name |Name |Name |Name
Real_Date | Name | Name |
Real_Date | Name| Name | Name | Name
Real_Date | Name | Name | Name | Name |Name| Name | Name | Name
以下是我试过的内容
SELECT
Hours.Real_Date, Person.Name ,Person.Role
FROM
Person
INNER JOIN
Hours ON Hours.P_ID = Person.ID
WHERE
(Hours.Real_Date >= getDate())
AND
(Hours.Real_Date <= getDate() + 90)
(Hours.H7_00 = 1 AND Hours.H7_00_Free = 1)
AND
(Person.Role = 1)
ORDER BY
Real_Date, Name
这就是我得到的
2013-12-12 AAAA 1
2013-12-12 BBBB 1
2013-12-12 CCCC 1
如果有人有解决方案,我会非常感激,
并提前感谢回复
答案 0 :(得分:0)
在SQL-Server(TSQL)中,您可以使用DATEADD (datepart , number , date)
:
(DATEADD(DAY,0,Hours.Real_Date) >= DATEADD(DAY,0,getDate()))
AND
(DATEADD(DAY,0,Hours.Real_Date) <= DATEADD(DAY,+90,getDate()))