80 대 20의 확률
WITH TEST_TABLE AS
(
SELECT 'A' TEAM, 20 RATE FROM DUAL UNION ALL
SELECT 'B' TEAM, 80 RATE FROM DUAL
)
SELECT *
FROM (
SELECT *
FROM TEST_TABLE A
, ( SELECT LEVEL LV FROM dUAL CONNECT BY LEVEL <= 100) B
WHERE RATE >= LV
ORDER BY DBMS_RANDOM.VALUE
)
WHERE ROWNUM <= 1
'Develop > Database & SQL' 카테고리의 다른 글
[Oracle] 서브쿼리 동작 방식을 제어하는 힌트들 (0) | 2024.06.28 |
---|---|
[MyBatis] jdbcType 종류 및 문법 (0) | 2024.03.18 |
[PL/SQL] 무작정 시작하기 (0) | 2022.12.01 |
1시간후, 1시간전, 1분전, 30분후, 1초전 (0) | 2022.09.23 |
SELECT COUNT(*), COUNT(1), COUNT(컬럼)의 차이는? (0) | 2021.07.01 |