-
MySQL - SELECT(1주차)DB 2023. 6. 1. 23:10728x90
SELECT 문
SELECT [테이블 컬럼 ( 필드 ) ], [테이블 컬럼 ( 필드 ) ], ... FROM [TABLE 명]
내가 검색하고자하는 테이블을 조회할 때 사용이 된다.
where
- Select 쿼리문으로 가져올 데이터에 조건을 걸어주는 것을 의미
where 절 연습
전제조건
- orders TABLE에는 유저의 아이디(user_id), 결제일?(created_at), 결제 수단(payment_method) 등의 정보가 있음
- "payment_method 가 'kakaopay' 다"라는 조건을 토대로 검색
SELECT * -- 보여줄 필드. * : 모든 필드 선택 조건
FROM orders -- 테이블명
WHERE payment_method = 'kakaopay';
where 절에 오는 형태는 다양하다.
SELECT * FROM users WHERE name = '황**'; >> 특정
SELECT * FROM point_users WHERE `point` > 20000; >> 비교
SELECT * FROM users WHERE name like '황%'; >> 와일드 카드(_ : 1글자, % : 여러글자)
SELECT * FROM orders WHERE course_title = '웹개발 종합반' AND payment_method = 'CARD'; >> AND 나 OR
SELECT * FROM orders WHERE payment_method != 'CARD' ;
SELECT * FROM point_users p WHERE `point` BETWEEN 20000 AND 30000 >> 범위 <BETWEEN A AND B>
...이 외에도 다양한 조건들이 많지만, 상식 밖의 범위를 크게 벗어 나지 않는다.
필요에 따라 찾아보는 습관이 중요!
더보기-- 퀴즈
-- 성이 남씨인 유저의 이메일만 추출하기
-- Gmail을 사용하는 2020/07/12~13에 가입한 유저를 추출하기
-- Gmail을 사용하는 2020/07/12~13에 가입한 유저의 수를 세기
SELECT email
FROM users
WHERE name LIKE '남%';
SELECT *
FROM users
WHERE email LIKE '%@gmail.com'
AND created_at BETWEEN "2020-07-12" AND "2020-07-14";
SELECT count(*)
FROM users
WHERE email LIKE '%@gmail.com'
AND created_at BETWEEN "2020-07-12" AND "2020-07-14";
추 후에 SELECT 절에서 다양한 집계함수와 단일 함수에 대해서도 잘 생각해 보며 정리를 해야겠다.
'DB' 카테고리의 다른 글
index - mysql (0) 2023.08.13 MySQL - SELECT(4주차) (0) 2023.06.02 MySQL - SELECT(3주차) (0) 2023.06.02 MySQL - SELECT(2주차) (0) 2023.06.02