본문 바로가기
data/sql

sql 문법 정리 2

by 포잉띠 2024. 3. 4.

select column1, column2 order by 1, 2

order by 부분에 column_1, 2 를 적지 않고 select문에 사용한

컬럼의 순서를 적어도 쿼리가 적용된다.

 

select column_1 as arin 

이 쿼리문은 약간 python의 pandas 라이브러리의 loc 메소드와 같은 느낌이다.

column_1 컬럼을 arin 컬럼으로 반환해 준다. 

맘편히 사용해도 된다고 한다.

 

like 연산자

이부분은 봐도 이해가 잘 안되어 GPT의 도움을 받았다.

예시도 깔끔하다.

 

python에서 정규표현식을 쓸 때 + 와 * 쓰는것처럼 쓰면 될 것 같다.

DB별로 대소문자를 구분할수도 안할수도 있다고 하니 유의하자.

 

in, and, or, not, not in, is null 

이 연산자들은 그간 다른 프로그래밍 언어에서 본 것들과 기능이 매우 유사하다.

upper, lower, round, abs, mod

이 함수들 또한 

upper // 대문자로

lower // 소문자로

round // 반올림

abs // 절대값

mod // 나머지 

로 다른 프로그래밍 언어와 크게 다르지 않다.

 

concat

정말 단순히 문자열을 이어 출력할수도 있고,

컬럼명을 응용해 필드의 값을 이어붙여 조회해 볼 수도 있다.

작동 방식, 출력에 모호한 부분이 있어 GPT에게 물어봤다.

pandas 에 concat과는 다른 방식의 합치기 같다.

원본 데이터 변경 없이 조회 시, 컬럼을 이어 하나의 컬럼으로 출력해 준다.

정말 단지 문자열의 결합으로 이해했다.

 

Substring

사실상 처음보는 함수라 GPT로 다시한번 확인했다.

python의 slicing과 매우 유사한 개념같다.

다만 이제 python에선 0부터 였다면 sql은 1부터라는점과

slicing 할 때 처럼 음수 사용은 불가능하며 반드시 양수만 사용해야 하는 점이 다르다.

일반적인 답변만 하는 녀석이 반드시라는 단어를 쓰다니

 

 

'data > sql' 카테고리의 다른 글

MySQL load data  (0) 2024.03.09
Sql 이진 데이터  (0) 2024.03.06
Mysql 8.0 Workbench로 로컬 테스트 환경 구축  (0) 2024.03.05
SQL Join  (1) 2024.03.05
sql 문법 정리 1  (0) 2024.03.01