2017-01-21 1 views
0

2 개의 쿼리가 있습니다.'b'근처에 잘못된 구문이 있고 날짜 또는 시간을 변환하지 못했습니다.

첫 번째

select a.ProductID, sum(a.Quantity) as Qty ,SUM (a.SubTotal) as Sub 
from TransactionDetail a join Transactions b on a.TransactionID = b.TransactionDate 
group by productID 

그래서 내가

select a.ProductID, sum(a.Quantity) as Qty ,SUM (a.SubTotal) as Sub 
from TransactionDetail a join Transactions b on a.TransactionID = (Convert(varchar(10),b.TransactionDate,101)) b.TransactionDate 
group by productID 

을 다음과 같이 날짜와 시간을 변환하는 시도가 날짜 또는 시간을 변환 할 수 없다는 오류 메시지를 받았습니다하지만 지금은이 오류 메시지를 받았습니다 :

메시지 102, 수준 15, 상태 1, 줄 3 'b'근처의 구문이 잘못되었습니다.

+0

'= (표현) b.TransactionDate' <- 당신이 여기에'b' 전에 괄호 후 정확히 무엇을 그리워 했습니까? 또는 ... 정확히 당신이 * SQL을 변경 한 후 * 제거하는 것을 잊었습니까? –

답변

2

이 부분 :

= (Convert(varchar(10),b.TransactionDate,101)) b.TransactionDate group by productID 

서버에 대해 불평 것입니다. 새로운 괄호 표현을 삽입하면

           v 
= (Convert(varchar(10),b.TransactionDate,101)) b.TransactionDate group by productID 

가능성이 높습니다하지만 이전에이 있던 부분을 제거하는 것을 잊었다 :

은 특히, 여기에 오류 메시지가 참조하는 b입니다. 즉, 당신은 가능성이 단순히이 부분을 제거 할 :

           v---------------v 
= (Convert(varchar(10),b.TransactionDate,101)) b.TransactionDate group by productID 
+0

@fadoewae : 답이 문제를 해결하면 다른 사람들이 문제가 해결되었음을 알 수 있도록 받아 들여야합니다. –

관련 문제