본문 바로가기
SQL

[SQL] practice 3

by nemonemonemo 2025. 8. 11.

SQL 문법 참고

 

MySQL :: MySQL 8.4 Reference Manual :: 15.2.13 SELECT Statement

15.2.13 SELECT Statement SELECT [ALL | DISTINCT | DISTINCTROW ] [HIGH_PRIORITY] [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT] [SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] select_expr [, select_expr] ... [into_option] [FROM table_referenc

dev.mysql.com

⇒ select 뒤에 붙는 명령어들은 다 순서/위치가 있다 → 내 마음대로 순서들 배치할 수 없다!


기본 쿼리문 중심

  • 사용할 db : employees
use employees;

  • mysql서버에 어떤 db들이 있는지
show databases;

  • 내가 어느 동네로 갈지
use employees;

  • 이 동네에 있는 테이블이 뭐냐
show tables; #--> 모든 테이블 이름 중심

# 참고) 좀 더 상세한 테이블 정보
show table status; -- table은 단수 

  • 특정 테이블에 대한 개략적인 정보 : [df.info](<http://df.info/>)()와 유사한 기능함
desc salaries; -- 그 테이블의 컬럼 중심 정보들이 나온다 
describe salaries; -- 위에 거랑 똑같은 거임
# 참고) pandas : df.describe() -> 수치 컬럼들에 대한 4분위수 중심의 대략적인 정보 전달

select 볼 항목들 from 대상 테이블

select * from employees;

  • 보고자 하는 컬럼 : first_name, last_name, hire_date
select first_name, last_name, hire_date from employees;
select first_name, last_name, hire_date from employees limit 5;

  • → 내가 보고자 하는 필드명으로 바꿔서 보자
select first_name, last_name, hire_date as `입사 일` 
from employees 
limit 5;
# --> 명확하게 : 필드명/테이블명/db명 [backtick 중심]
#                개별 데이터 값      ["",'' 인용문구 중심]
# as : 별칭을 사용할 때 -> 생략도 가능함
select first_name, last_name, hire_date `입사 일` #as 생략 
from employees 
limit 5;

  • Q) 사원들에 대한 이름과 성별 정보를 출력해보세요
    • 그냥 한 번 조회해보기
    show columns from employees;
    
    select first_name, last_name, gender
    from employees
    limit 10;
    
    • 필드명 교체해보기 ( 이름, 성, 성별)
    select first_name '이름', last_name '성', gender '성별'
    from employees
    limit 10;
    
    # 참고) 별칭이 공백이 없다면,,굳이 `없이 해도 되기는 함..
    select first_name as 이름, last_name 성, gender 성별
    from employees limit 10;