행위

Mysql 5%씩 감소하는 쿼리

DB CAFE

Dbcafe (토론 | 기여)님의 2024년 3월 25일 (월) 14:36 판
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
thumb_up 추천메뉴 바로가기


  • 주어진 상수값에 대해 단계적 으로 5%씩 감소하는 값을 구한다. 단, 최대 감소하는 단계는 10단계 임
SELECT (상수값 * (1 - (0.05 * (순서 - 1)))) / 10 AS 나눈값
FROM (
    SELECT @rownum := @rownum + 1 AS 순서
    FROM (SELECT 0 UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) t1,
         (SELECT 0 UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) t2,
         (SELECT @rownum := 0) r
) 순서테이블,
(SELECT @constant := 상수값) 설정;


여기서 "상수값"은 주어진 값이고, 필요에 따라 실제 데이터에 맞게 변경해 주세요. 이 쿼리는 0부터 9까지의 숫자를 생성하여 각 숫자에 해당하는 감소율을 적용한 후 10으로 나누어 결과를 반환합니다.