ORA-01785: ORDER BY 항목은 SELECT 목록 식의 수라야 합니다 ORDER BY 절에서 해당 오류가 발생 하였을 경우 ORDER BY 절에 함수(DECODE, NVL, TO_NUMBER, 사용자함수 등)를 사용하였는지 확인해 보아야 한다. 일반적으로 ORDER BY 절에 함수를 사용하는건 아무런 이상이 없지만 해당 쿼리문에 집합연산자 ( UNION, UNION ALL , MINUS, INTERSECT)가 사용이 되었다면 오류가 발생 한다. 집한연산자가 사용된 쿼리문의 ORDER BY 절에는 함수 사용을 하지 말아야하며 꼭 사용해야 한다면 해당 쿼리문을 인라인 뷰(INLINE VIEW)로 감싸서 ORDER BY를 하면 된다. UNION ALL을 사용한 쿼리문에서 ORDER BY 절에 DEC..
TO_CHAR를 사용하여 숫자를 문자로 변환하면 소수점 이상이 0일 경우 점(.)으로만 표시되어 변환이 된다. 아래와 같은 포맷(FORMAT) 옵션을 활용하여 변환된 수치 값의 형태를 결정할 수 있다. SELECT TO_CHAR(0.40, 'FM9990.99') STR , RTRIM(TO_CHAR(4, 'FM9990.99'),'.') STR2 --정수일경우 소수점표시 안함 (RTRIM) FROM DUAL;--STR : 0.4 --STR2 : 4 FM9990.99의 의미9는 해당 자리의 숫자를 의미하고 값이 없을 경우 소수점 이상은 공백으로 소수점 이하는 0으로 표시한다.0은 해당 자리의 숫자를 의미하고 값이 없을 경우 0으로 표시하며 숫자의 길이를 고정적으로 표시 할 때 주로 사용한다.FM은 좌우 9로 ..
SQL Server 2008, SQL Server 2012 날짜(Date) 형식의 값을 특정 문자(String) 포맷(Format)으로 바꾸는 방법을 소개한다. 아래는 자주 사용하는 YYYY-MM-DD HH24:MI:SS 으로 변경하는 방법이다. CONVERT( [포맷(길이)], [날짜 값], [변환형식] ) select convert(varchar, getdate(), 120) --결과 : 2014-12-12 19:21:36 ; select convert(varchar(10), getdate(), 120) --결과 : 2014-12-12 ; select convert(varchar(16), getdate(), 120) --결과 : 2014-12-12 19:21 [이외의 날짜 변환형식] select co..