mysql 3

[MySQL] varchar 에서 number로 / 특정 문자 제거

varchar 타입의 column에 가격 정보를 '3,000,000' 와 같이 저장했는데 숫자로 크기를 비교하기 위해 가공을 해야 했다. MySQL의 내장 함수 두 개를 사용하여 이를 해결했다. SELECT MIN( cast( replace(goods_price, ',', '') as unsigned)) as price_min, MAX( cast( replace(goods_price, ',', '') as unsigned)) as price_max FROM GOODS 우선 replace()로 goods_price의 , 를 빈 문자열로 바꿨다. 그리고 cast( X ) as unsigned 로 문자열 숫자 데이터를 숫자로 바꿔주었다.

개발 이슈 2019.07.11

[MySQL] 순위 매기기. MySQL 변수 사용.

오라클 SQL은 ROW_NUMBER(), RANK(), DENSE_RANK() 등의 함수를 이용해 순위를 쉽게 메길 수 있지만 MySQL에서는 지원하지 않는 함수이기 때문에 다른 방법으로 순위를 메겨야 했다. 그래서 발견한 방법이 MySQL 에서 변수를 사용해 순위를 메기는 것이다~~!!!!!!👻 SELECT @x := @x+1 as food_rank, food_idx, food_name FROM FOOD, (SELECT @rownum := 0) as R ORDER BY food_score DESC 이렇게 하면 food_score를 기준으로 food_rank를 1부터 순위를 메길 수 있다.

개발 이슈 2019.07.11