반응형
-- 사용 테이블 예제
DROP TABLE IF EXISTS product_order;

CREATE TABLE product_order(
	ID   INT AUTO_INCREMENT PRIMARY KEY,
	name VARCHAR(20),
	product VARCHAR(50),
	price DOUBLE
);

INSERT INTO product_order(name, product, price) VALUES('홍길동', 'TV', -5000);
INSERT INTO product_order(name, product, price) VALUES('가길동', 'TV', 500.7);  
INSERT INTO product_order(name, product, price) VALUES('나길동', 'TV', 500);  
INSERT INTO product_order(name, product, price) VALUES('다길동', 'TV', 9);

 

📝ABS

  • ABS(숫자)
  • 절대값을 계산해줍니다.
SELECT name, price, ABS(price) as abs
  FROM product_order 
 WHERE name='홍길동';

 

Document
name price abs
홍길동 -5000 5000

 

📝CELING, FLOOR, ROUND

  • CEILING(숫자) FLOOR(숫자) ROUND(숫자)
  • CEILING올림, FLOOR내림, ROUND반올림을 해줍니다.

 

SELECT  name, price, CEILING(price) AS ceilng, FLOOR(price) AS floor, ROUND(price) AS round
  FROM product_order 
 WHERE name='가길동';

 

Document
name price ceilng floor round
가길동 500.5 501 500 501

 

 

📝MOD

  • MOD(숫자1, 숫자2)
  • 숫자1을 숫자 2로 나눈 나머지 값을 반환합니다.

 

SELECT name, price, MOD(price,450) AS price_mod
  FROM product_order 
 WHERE name='나길동';

 

Document
name price price_mod
나길동 500 50

 

📝POW, SQRT

  • POW(숫자1숫자2) SQRT(숫자)
  • POW제곱을 의미합니다 여기선 2^3을 의미합니다.
  • SQRT제곱근을 나타냅니다.
SELECT name, price, POW(price,2) AS POW, SQRT(price)  AS sqrt
  FROM product_order 
 WHERE name='다길동';

 

Document
name price pow sqrt
다길동 9 81 3

 

📝SIGN

  • SIGN(숫자)
  • 숫자가 양수이면 1을 반환하고0이면 0 음수면 -1을 반환합니다.

 

SELECT name, price, SIGN(price) as sign
  FROM product_order 
 WHERE name IN ('홍길동','나길동');

 

Document
name price sign
홍길동 -5000 -1
나길동 500 1

 

📝RAND

  • RAND()
  • RAND()는 0 ~ 1 까지 실수를 랜덤으로 내보내줍니다.

 

SELECT FLOOR(1 + (RAND() * (5) )) AS random;
-- 1 ~ 6까지 랜덤한 정수가 나온다. (FLOOR를 이용해 자리 내림을 해서 정수가 나오게 된다.)

 

📝CONV

  • CONV(숫자원래 진수, 변환할 진수)
  • 숫자에 적힌 원래 진수 다른 진수로 변환시켜줍니다.

 

SELECT CONV('AA',16,2) AS conv;

 

Document
conv
101010

 

 

📝TRUNCATE

  • TRUCATE(숫자, 정수)
  • 정수에는 소수점을 몇번자리까지 표현할지 정합니다. 그 밑에 숫자는 다 버리고 정수의 경우 0으로 채워넣습니다.
  • TRUNCATE(12345.12345, -2); 이거 같은 경우는 -2 정수 2번째 자리까지 버립니다.

 

SELECT TRUNCATE(12000.12500,2) AS plus_truncate, TRUNCATE(12350.124800,-2) AS minus_truncate;

 

Document
plus_truncate minus_truncate
12000.12 12300
반응형