어떤 테이블의 issue_date 라는 이름의 컬럼 자료형은 datetime 인데 '2014-02-25 01:00:54' 와 같은 문자열과 비교하는 쿼리문을 사용해도 괜찮은지 질문드립니다.
where issue_date >= '2014-02-25 01:00:54' 이런식으로 말이죠.
문자열을 datetime으로 변경하기위해 where절에서 convert나 cast를 쓰는것이 더 좋을까요? 성능적 측면에서 잇점이 있다면 바꾸려고 하는데 그렇지 않다면 걍 놔두려구요. ^^;
Comment 3
-
항해자™
2014.02.25 01:50
-
버즈베잇
2014.02.25 11:38
데이터 형식 우선 순위(Transact-SQL)
우선순위 에서 datetime 이 문자열 타입보다 위에 있습니다.따라서 항해자님 답변 처럼 '2014-02-25 01:00:54' 이 datetime으로 암시적 형변환 됩니다.issue_date 가 인덱스 필드라면 해당 필드에 변형이 생기지 않기 때문에 성능상에는 문제가 없을 것 입니다. -
까나리
2014.02.25 13:52
답변도 얻고 지식도 얻게 해주셔서 두분께 정말 감사드립니다.
묵시적 형변환이 발생하므로 사용가능합니다.
프로시저에서 파라미터를 받는 것 이라면 datetime으로 받아서 사용하는게 좋습니다.