- if구문 용법 if(조건, '참일때 값','거짓일때 값') - 예시 : 1학년이면 신입생 그렇지 않으면 재학생이라고 출력하라 SELECT NAME, grade, if(grade=1,'신입생','재학생') FROM student; #if문도 컬럼취급 - 중첩 if문 : if안에 if문을 작성하여 여러조건에 맞게 출력 - grade 1:1학년, 2:2학년, 3:3학년, 4:4학년으로 출력하라 SELECT NAME, grade, if(grade=1,'1학년',if(grade=2,'2학년',if(grade=3,'3학년','4학년'))) FROM student; - CASE 문으로 출력하기 : END를 빼먹지 않도록 주의 SELECT NAME AS 이름, grade AS 학년, case grade when 1..
- ifnull() 구문용법 ifnull(변수명,null일때 출력할 값) - 예시1 emp 테이블을 참고하여 연봉은 salary*12와 bonus합이다. 이때 bonus가 null인 사람까지 모두 연봉을 계산하라 SELECT salary, ifnull(bonus,0), salary*12+ifnull(bonus,0) FROM emp; - 예시2 학생명과 지도교수번호를 출력하되 지도교수가 배정되지 않은 학생은 지도교수 번호를 9999로 출력하라 SELECT NAME, ifnull(profno,9999) FROM student;
1. 날짜 및 시간을 출력하는 기본적인 함수 SELECT NOW(), CURDATE(), SYSDATE(); 2. 날짜 간격을 구하는 함수 SELECT DATEDIFF('2021-02-26','2020-08-21'), TIMESTAMPDIFF(SECOND, NOW(), '2020-12-25 00:00:00'); DateDiff() : 날짜간격을 일단위로 리턴 TimeStrampdiff () : 날짜간격을 초단위로 리턴 3. 각종 날짜관련 함수 SELECT YEAR(NOW()), MONTH(NOW()), DAY(NOW()), WEEKDAY(NOW()), DAYOFWEEK(NOW()), WEEK(NOW()); weekday() : 요일 (월:0) dayofweek() : 요일 (일1..) SQL 예제1. 직..
# 문자열의 위치 # find_in_set(찾을 문자열, 찾을 대상) : 찾을 대상에서 문자열의 위치를 리턴함 SELECT FIND_IN_SET('c', 'a,b,c,d,e,f')
SQL을 사용해서 데이터를 다룰 때 공백과 관련된 문제가 발생할 수 있는데 이때 공백을 제거하는 함수로 TRIM 함수를 이용할 수 있다. 1 2 3 4 SELECT CONCAT(' abcd ', '--') AS a # 공백이 있는 상태 SELECT CONCAT(TRIM(' abcd '), '--') AS a # trim 함수로 공백제거상태 SELECT CONCAT(LTRIM(' abcd '), '--') AS a # 왼쪽 공백제거 SELECT CONCAT(RTRIM(' abcd '), '--') AS a # 오른쪽 공백제거 cs TRIM 함수는 공백만이 아니라 특정 문자열을 지정해서 지정한 문자열을 제거하는데 사용할 수 있다. 1 2 3 4 5 6 7 # 0001234000 : 양쪽 0을 제거 SELEC..