MySQL/SQL 기본(12)
-
[MySQL] 수학 함수
abs(숫자)숫자의 절대값을 계산한다.SELECT ABS(-100)CEILING(숫자), FLOOR(숫자), ROUND(숫자)순서대로 올림, 내림, 반올림으로 계산한다. CELING()은 CEIL()과 동일하다. SELECT CEILING(4.7), FLOOR(4.7), ROUND(4.7); MOD(숫자1, 숫자2) 또는 숫자1 % 숫자2 또는 숫자1 MOD 숫자2숫자1을 숫자2로 나눈 나머지 값을 구한다. SELECT MOD(157,10), 157% 10, 157 MOD 10; RAND()0이상 1미만의 실수를 구한다. 'mSELECT RAND(), FLOOR(1 + (RAND() * (7-1))); SIGN(숫자)숫자가 양수, 0, 음수인지를 구한다. 결과는 1, 0, -1 셋 중에 하나를 반환한다...
2024.09.10 -
[MySQL] 문자열 함수 -3-
LTRIM(문자열), RTRIM(문자열)문자열의 왼쪽/오른쪽 공백을 제거한다. 중간의 공백은 제거되지 않는다. SELECT LTRIM(' 이것이'), RTRIM('이것이 ');TRIM(문자열), TRIM(방향 자를_문자열 FROM 문자열)TRIM(문자열)은 문자열 앞뒤 공백을 모두 없앤다. TRIM(방향 자를_문자열 FROM 문자열)에서 방향은 LEADING(앞), BOTH(양쪽), TRAILING(뒤)가 나올 수 있다. SELECT TRIM(' 이것이 '), TRIM(BOTH 'ㅋ' FROM 'ㅋㅋㅋ 재밌어요. ㅋㅋㅋ'); REPEAT(문자열, 횟수)문자열을 횟수만큼 반복한다. SELECT REPEAT('이것이', 3);REPLACE(문자열, 원래 문자열, 바꿀 문자열)문자열에서 원래 문자열..
2024.09.06 -
[MySQL] 문자열 함수 -2-
FORMAT(숫자, 소수점 자릿수)숫자를 소수점 아래 자릿수까지 표현한다. 또한 1000단위마다 콤마를 표시해준다. SELECT FORMAT(123456.123456, 4); /123,456.1235 BIN(숫자), HEX(숫자), OCT(숫자)2진수, 16진수, 8진수의 값을 반환한다. SELECT BIN(31), HEX(31), OCT(31) // 11111, 1F, 37 INSERT(기준 문자열, 위치, 길이, 삽입할 문자열)기준 문자열의 위치부터 길이만큼을 지우고 삽입할 문자열을 끼워 넣는다. SELECT INSERT('abcdefghi', 3, 4, '@@@@'), INSERT('abcdefghi', 3, 2, '@@@@');// ab@@@@ghi , ab@@@@efghi LEFT(문자열, 길이..
2024.08.26 -
[MySQL] 문자열 함수 -1-
ASCII(아스키코드), CHAR(숫자)문자의 아스키 코드값을 돌려주거나 숫자의 아스키 코드값에 해당하는 문자를 돌려준다. SELECT ASCII('A'), CHAR(65);BLOB 글자를 오른쪽 버튼을 클릭한 뒤에 'Open Value in Viewer'을 선택한다. TEXT 탭에 내용이 있다. BIT_LENGTH(문자열), CHAR_LENGTH(문자열), LENGTH(문자열)할당된 Bit 크기 또는 문자 크기를 반환한다. CHAR_LENGTH는 문자의 개수를 반환하며 LENGTH는 할당된 Byte 수를 반환한다. SELECT BIT_LENGTH('abc'), CHAR_LENGTH('abc'), LENGTH('abc'); //24 3 3SELECT BIT_LENGTH('가나다'), CHAR_LENG..
2024.08.22 -
[MySQL] 제어흐름함수
IF(수식, 참, 거짓) 수식이 참 또는 거짓인지 결과에 따라서 2중 분기한다. SELECT IF (100>200, '참이다', '거짓이다'); IFNULL(수식1, 수식2)수식1이 NULL이 아니면 수식1이 반환되고, 수식1이 NULL이면 수식2가 반환된다. SELECT IFNULL(NULL, '널이군요'), IFNULL(100, '널이군요'); NULLIF(수식1, 수식2)수식1과 수식2가 같으면 NULL을 반환하고, 다르면 수식1을 반환한다. SELECT NULLIF(100, 100), NULLIF(200, 100);CASE ~ WHEN ~ ELSE ~ END다중 분기에 사용될 수 있다. CASE 뒤의 값을 WHEN 조건에 맞는지 확인하고 아니면 ELSE로 반환한다. END AS는 출력될 열의 별..
2024.08.19 -
[MySQL] 암시적인 형 변환
암시적인 형변환은 CAST나 CONVERT 함수를 사용하지 않고 데이터 형식을 변환하는 것을 말한다. SELECT '문자열' + '문자열'문자와 문자를 정수로 변환하여 더한다.SELECT '100' + '200';CONCAT문자열을 연결해주는 함수이다. 문자열이 그대로 문자열로 처리된다. 문자열은 물론이고 정수도 문자열로 전환되어서 문자열 결합을 행한다. 아래 코드는 모두 똑같은 결과가 나온다. SELECT CONCAT('100', '200');SELECT CONCAT(100, '200');비교연산자SELECT 1 > '2mega'; //0 SELECT 3 > '2MEGA'; //1SELECT 0 = 'mega2'; //1 0는 false 1은 true이다. 앞에 숫자가 있으면 문자열이 숫자로 변경되어..
2024.08.18