데이터베이스 개발자 질문과 답변 게시판
데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
안녕하세요..
MSSQL2000에서 *=를 사용했었는데.. 2012로 이전하고 에러가 나네요..
사용할수 있는 방법이 없나요???
select a.*,isnull(r_cnt,0)r_cnt from tbl_order a ,(select count(c_idx)r_cnt,o_idx from tbl_ord_comment group by o_idx) c where a.o_idx *= c.o_idx order by a.o_idx desc
이런식으로 쿼리를 햇었습니다.
고수님들의 조언부탁드립니다.
감사합니다.
Comment 3
-
건우아빠
2013.07.22 11:42
-
쓸만한게없네(윤선식)
2013.07.24 14:59
SQL Server 2012 에서는 80 모드를 지원하지 않습니다.
즉 SQL Server 2012 에서는 *= 를 사용하실 수 없고
모두 LEFT OUTER JOIN 구문으로 변경하셔야 합니다.
사실상 SQL Server 2005 인 90모드부터 지원하지 않는 명령어이므로, 변경하셔서 사용하셔야 합니다.
-
건우아빠
2013.07.24 15:31
아! 2012에서는 없군요.. 전 당연 있을줄 알았는데.....
호환성을 낮춰주면 먹을겁니다.
80(2000)으로 낮춰주면 사용가능 합니다.
인시쿼리로 수정 하시는게 좋을듯 합니다. 익숙해지면 쿼리 작성하기가 더 쉽습니다.