[ORACLE] ORA-01861: literal does not match format string 오라클 에러 해결 방법
·
Study/SQL
ORA-01861: literal does not match format string 에러 발생 원인과 해결 방법DATE 타입인 컬럼과 String 문자열을 비교해서 발생한 오류이다. 문자열을 DATE 타입으로 바꾸어 해결했다. 기존 쿼리에서의 WHERE 절SELECT * FROM TABLE_NAME WHERE DATE_COL='20190101'; 변경한 WHERE 절SELECT * FROM TABLE_NAME WHERE DATE_COL=TO_DATE('20190101','YYYYMMDD');
[SQL/DATABASE] 문자열 데이터에서 숫자만 보기
·
Study/SQL
[SQL/DATABASE] 문자열에서 숫자만 추출하기 문자열로 된 시간 데이터에 조건을 걸고 싶은데 한글이 섞여 있고 숫자로만 이루어지지 않은 데이터들이 있었다. 이때 REGEXP_REPLACE(TIME,'[^0-9]') 이렇게 사용하면 문자열에 있는 숫자만 보여 준다. SELECT TIME FROM TABLE WHERE REGEXP_REPLACE(TIME,'[^0-9]');
[SQL/ORACLE] IN 연산자 사용 방법과 예제
·
Study/SQL
IN 연산자란? 특정 값, 조건에 속하는지 확인할 때 쓰는 연산자이다. 코딩 테스트나 학생 때는 IN 연산자를 자주 사용하지 않았었는데 업무 할 때 쿼리를 짜다 보니 IN 연산자 쓸 일이 참 많더라.. IN 연산자 예시 Student 라는 테이블에서 학번 (컬럼명은 NUM이라 하자) 이 2701, 2702, 2705, 2715, 2719인 학생들을 찾아본다고 가정하자. 처음 봤을 때 연속적인 값이 아니라서 어떻게 하지? 고민했었는데, IN 연산자 사용해서 하나하나 입력해 주어야 했었다. 쿼리를 작성하면 아래와 같다. SELECT * FROM STUDENT WHERE NUM IN (2701, 2702, 2705, 2715, 2719); 이렇게 질의하면 해당 학번에 있는 학생들만 조회될 것이다. NOT IN..