Q. λ°μ΄ν° λΆμ νμμλ μ°μ μ μκ±°νΈλ₯Ό λμμ ꡬμ ν μ₯λ°κ΅¬λκ° μλμ§ μμλ³΄λ € ν©λλ€. μ°μ μ μκ±°νΈλ₯Ό λμμ ꡬμ ν μ₯λ°κ΅¬λμ μμ΄λλ₯Ό μ‘°ννλ SQL λ¬Έμ μμ±ν΄μ£ΌμΈμ. μ΄λ κ²°κ³Όλ μ₯λ°κ΅¬λμ μμ΄λ μμΌλ‘ λμμΌ ν©λλ€.
μλ₯Ό λ€μ΄, CART_PRODUCTS ν μ΄λΈμ΄ λ€μκ³Ό κ°λ€λ©΄
ID | CART_ID | NAME | PRICE |
1630 | 83 | Cereal | 3980 |
1631 | 83 | Multipurpose Supply | 3900 |
5491 | 286 | Yogurt | 2980 |
5504 | 286 | Milk | 1880 |
8435 | 448 | Milk | 1880 |
8437 | 448 | Yogurt | 2980 |
8438 | 448 | Tea | 11000 |
20236 | 1034 | Yogurt | 2980 |
20237 | 1034 | Butter | 4890 |
- 83λ² μ₯λ°κ΅¬λμλ Milkμ Yogurtκ° λͺ¨λ μμ΅λλ€.
- 286λ² μ₯λ°κ΅¬λμλ Milkμ Yogurtκ° λͺ¨λ μμ΅λλ€.
- 448λ² μ₯λ°κ΅¬λμλ Milkμ Yogurtκ° λͺ¨λ μμ΅λλ€.
- 1034λ² μ₯λ°κ΅¬λμλ Milkλ μκ³ Yogurtλ§ μμ΅λλ€.
SELECT A.CART_ID
FROM CART_PRODUCTS A JOIN ( SELECT ID
FROM CART_PRODUCTS
GROUP BY CART_ID, NAME
HAVING NAME = 'MILK' OR NAME = 'YOGURT' ) B ON A.ID = B.ID
GROUP BY CART_ID
HAVING COUNT(CART_ID) >=2
π κ·Όλ°, μ°μ μ μκ±°νΈ κ°κ° 2κ°μ© μμ λ μ΄λ»κ² νλ? = μ¦, μ°μ λ§ 2κ° μ¬κ±°λ, μκ±°νΈλ§ 2κ° μ° κ²½μ°λ μμν λ°,,,?
π λ΄ μΏΌλ¦¬μμλ GROUP BY CART_ID, NAMEμΌλ‘ λ¬ΆμμΌλκΉ, ν μ¬λμ΄ μ°μ λ§ 2κ° μ° κ²½μ°λΌλ©΄ κ·Έλ£ΉμΌλ‘ λ¬Άμ΄μ νλλ‘ λμ¬ κ²μ!
π μ€μ€μ€!! κ·Έλ¬λκΉ λ§κ² νμλ€~!!
# μμ μ½λλ€
SELECT CART_ID
FROM CART_PRODUCTS
WHERE NAME = 'MILK'
INTERSECT
SELECT CART_ID
FROM CART_PRODUCTS
WHERE NAME = 'YOGURT'
π INTERSECT ( κ΅μ§ν© ) : μμͺ½ λͺ¨λμμ ν¬ν¨λ νμ κ²μ.
π μ΄λ κ² νΈλ κ² μ μΌ κ°λ¨ν λ―!!