2012-04-17 3 views
0

일부 데이터를 관리하고 수행 할 수없는 결과를 검색해야합니다.SQL 쿼리 내부에서 datetime과 결합

Table1 
id int 
idcat int (related to the table2) 
tt varchar 
dt datetime 

Table2 
idcat int 
days int 

은 내가 필요한 것은 category (idcat)에 관련된 일보다 오래된 모든table1 레코드를 검색하는 것입니다.

감사합니다,

답변

1
SELECT * from Table1 a join Table2 b on a.idcat = b.idcat where DATEDIFF(NOW(), dt)<=b.days 

당신에게 내 아래 쿼리가 작동 여부를 확실하지 오전 각 카테고리

+0

감사합니다. 각 카테고리에 지정된 일수를 초과하지 않는 모든 기록을 검색해야합니다. 예제 category1의 경우 10 일, cat2는 30 일입니다. – Andrea

+0

오, 이제 알겠습니다. 편집 할게요. –

0

의 일보다 오래된 모든 기록을 제공해야 A.하지만이 방법 논리입니다 구현해야합니다. MySQL에 대한 SQL Server 쿼리를 수정하여 확실하지 않습니다.

SELECT * from Table1 a join Table2 b on a.idcat = b.idcat where DATE_ADD(NOW(), INTERVAL b.days DAY) 

당신은 DATE_ADD() 기능은 쿼리 아래를 시도 할 수 있습니다.

SELECT DATE_ADD('2008-12-15', INTERVAL b.days DAY)