컬럼 type이 varchar입니다..
그런데 이곳에는 숫자만으로 입력되어져야 하는데..
어떤 것들은 예를 들어 거리가 숫자로만 입력되어야 하는데
25Km, 25000m, 300키로
이런식으로 들어있는게 있습니다..
이런 row들은 아예 무시하고 select하지 않으려고 하는데..
그럼 어떤 조건으로 저런 row들은 무시해버릴수 있을까요??
뭐 대충 이렇게 하심 될듯....(확실치는 않습니다)
charindex로 string하나씩 보시면서 숫자9의 아스키 값보다 크면 skip
아니면 출력 하는 형태로
말을 쉬우나....프로그램으로 작성하자면 looping을 열라 돌려야 할것 같습니다.
더 좋은 방법이 있을듯 한데.....
문자가 들어있을시 UPPER혹은 LOWER를 통해 비교를 할경우 1/-1을 리턴합니다. 숫자일경우 UPPER/LOWER를 해도 동일한 값을 갖기때문에 0을 리턴하게 되죠
단 DBCharacterSet이 eucksc?(한글)일경우 한글을 UPPER/LOWER할경우 안먹히는걸로 알고 있습니다. 확인해보지 않아 이부분은 사용하고있는 DB에서 확인해봐야될듯합니다. eucksc가 아닐경우는 한글도 잘 됩니다.
SELECT * FROM table_name WHERE COMPARE(UPPER(field_name), field_name) = 0