-
SQL 연산자
1. 산술 연산자
- +, -, *, /, mod(나머지 연산), div(몫)
2. 비교 연산자
- =(같다,조건절), <, >, >=, <=, <>(다르다)
3. 대입 연산자
4. 논리 연산자
5. 기타 연산자
- is: 양쪽이 모두 같으면 true 아니면 false
- between A and b: 값이 A보다는 크거나 같고, B보다는 작거나 같으면 true 아니면 false
- in: 매개변수로 전달된 리스트에 값이 존재하면 true 아니면 false
- like: 패턴으로 해당 문자열을 검색하여 값이 존재하면 true 아니면 false
데이터 검색
- select 필드명1, 필드명2 ... from 테이블명;
- select 100 * 5 ;
별명
- select 필드명 as 별명 from 테이블명;
- ' ' 를 안넣고 사용 하면 띄어쓰기를 쓰면 오류가 뜬다.
- select 100 + 50 as '덧셈'; -- ''를 사용하는 이유는 띄어쓰기가 있을 수 있어서 사용
- select 100 + 50 as '덧셈 연산';
- select 100 + 50 as 덧셈; -- 안써도 문제가 생기진 않는다.
- select 100 + 50 덧셈; -- as를 안써주어도 문제가 생기지 않음
- member Table
- 모든 컬럼 가져오기(추천하지 않음)
- select * from member;
- select userid as 아이디, username as 이름, hp as 휴대폰번호 from member;
null과 ' '
- select null; # 데이터가 없음, insert가 되지 않은 것
- select ''; # 해당 셀에 '' 데이터가 삽입된 것
- select 100 + null; # 결과: null, 연산할 수 없음
- select 100 + ''; # 결과: 100, 연산할 수 있음
조건절
- select 필드명1, 필드명2 ... from 테이블명 where 조건절
- select userid, username, hp, email from member where userid='apple';
- select userid, username from member where gender='남자';
- select userid, username, point from member where point >= 300;
로그인
- select userid, username, hp, email from member where not(userid = 'apple' and userpw = '1234');
- select userid, username, hp, email from member where userid = 'apple' and userpw = '1234';
- userpw가 1234가 없어서 null로 나온다
is
- select userid, username, hp from member where address1 = null; -- X
- select userid, username, hp from member where address1 = 'null'; -- X
- select userid, username, hp from member where address1 is null; -- O # null값인 것을 출력
null값이 없어서 아무것도 출력안된다.
- select userid, username, hp from member where address1 is not null; # null값이 아닌 것을 출력
Between
- 포인트가 100이상 300이하인 회원의 userid, username, point를 출력
- select userid, username, point from member where point between 100 and 300;
- select userid, username, point from member where point >= 100 and point <= 300; -- 위와 같은 결과를 출력
in
- 포인트가 100, 300인 회원을 모두 출력
- select * from member where point in(100,300);
like 연산자
- select userid, username from member where userid like 'a%'; -- a로 시작하는 문자열
- select userid, username from member where userid like '%a'; -- a로 끝나는 문자열
- select userid, username from member where userid like '%a%'; -- a가 들어가는 문자열
- select userid, username from member where userid like '%app%'; -- app이 들어가는 문자열
- select userid, username from member where userid like 'app__'; -- app으로 시작하는 5글자
정렬
- asc: 오름차순, desc: 내림차순
- select 필드명1, 필드명2 ... from 테이블명 order by 정렬할 필드명[asc, desc]
- select userid, username, point from member order by userid asc;
- select userid, username, point from member order by userid desc;
- select userid, username, point from member order by userid; -- 아이디로 오름차순
- 포인트를 기준으로 내림차순하고 같은 포인트인 경우 아이디로 내림차순
- select userid, username, point from member order by point desc, userid desc;