안녕하세요 마블랑입니다.
가끔 데이터베이스와 연동하는 프로그램을 구현해야할때가 있습니다.
어렵지 않은 쿼리문인데도 헷갈리기 때문에 포스팅을 통해서 정리를 해두려고 합니다~
데이터베이스마다 쿼리문이 조금씩 다르지만 이 포스팅에 정리되는 내용은 거의 모든 데이터베이스에서 사용되는 기초적인 쿼리문입니다~
1. SELECT
가장 기본이 되는 데이터를 불러오는 쿼리문입니다.
1) SELECT 컬럼명 FROM 테이블명;
- 해당 테이블의 해당컬럼의 데이터를 불러옵니다. 컬럼 전체를 불러오고 싶을때는 컬럼명 부분에 '*' 를 넣으시면 됩니다.
2) SELECT 컬럼명 FROM 테이블명 WHERE 컬럼명=값;
WHERE 구문을 추가하여 해당 조건이 참인 데이터만 불러옵니다.
WHERE 뒤에오는 컬럼명의 값이 지정한 값인 데이터 행의 컬럼명만 가져옵니다.
3) SELECT 컬럼명 FROM 테이블명 WHERE 컬럼명=값 ORDER BY 컬럼명 ASC or DESC;
ORDER BY 뒤에 오는 컬럼명에 대하여 불러오는 데이터를 정렬합니다. ASC는 오름차순, DESC는 내림차순입니다. 공백을 입력하면 ASC가 기본값으로 오름차순으로 정렬됩니다.
4) SELECT 컬럼명 FROM 테이블명 WHERE 컬럼명=값 ORDER BY 컬럼명 ASC or DESC LIMIT 개수;
LIMIT 구문을 추가하여 데이터 행이 많을때 개수만큼 데이터를 불러옵니다
2. INSERT
데이터를 삽입할때 사용하는 쿼리문입니다.
1) INSERT INTO 테이블명 (컬럼명1, 컬럼명2, 컬럼명3) VALUES (값1, 값2, 값3);
테이블명에 있는 컬럼명에 맞게 값을 입력합니다. 컬럼명과 값의 개수는 동일해야합니다.
만약에 문자열을 입력하는 경우 작은따옴표로 문자열을 감싸줘야합니다.
ex. INSERT INTO table_Student (Name, Class, Age) VALUES ('Jane','A',16);
2) INSERT INTO 테이블명 VALUES (값1, 값2, 값3);
1) INSERT 문에서 테이블명 다음에 컬럼명을 입력하지 않아도 됩니다 하지만 테이블에 있는 모든 컬럼의 수에 맞게 값을 입력을 해야합니다.
ex. 컬럼이 Name, Class, Age 이렇게 3개인 테이블에서
INSERT INTO table_Student value ('Jane','A',16); -> 성공
INSERT INTO table_Student value ('Jane','A'); -> 실패
3. UPDATE
이미 존재하는 데이터를 수정할때 사용하는 쿼리문입니다.
1) UPDATE 테이블명 SET 컬럼명 = 변경할 값;
테이블에 있는 모든 데이터의 컬럼의 값을 변경합니다. 특정한 데이터만 수정하고 싶다면 WHERE절을 사용해야합니다.
2) UPDATE 테이블명 SET 컬럼명 = 변경할 값 WHERE 컬럼명=값;
WHERE절에 맞는 데이터만 변경합니다.
3) UPDATE 테이블명 SET 컬럼명1 = 변경할 값1,컬럼명2 = 변경할 값2 WHERE 컬럼명=값;
변경해야할 컬럼이 여러개일 때 콤마(,)를 사용하여 여러개의 값을 변경할 수 있습니다.
4. DELETE
테이블에 있는 데이터를 삭제할때 사용합니다.
1) DELETE from 테이블명;
테이블에 있는 모든 데이터를 삭제합니다.
2) DELETE from 테이블명 WHERE 컬럼명=값;
WHERE절에 맞는 데이터만 삭제합니다.
* WHERE절 조건 여러개 추가하기
WHERE절을 통해서 쿼리문에 조건을 추가할수 있습니다. 위에 있는 내용은 한가지 조건일때만 나타내었는데 만약에 여러가지의 조건을 사용하고 싶을때는 and를 사용하시면 됩니다.
ex WHERE 컬럼명1=값1 and 컬럼명2=값2
UPDATE 쿼리문의 콤마(,)와 다르니 주의하시기 바랍니다~
이상 SQL 쿼리문에 대한 포스팅을 마치겠습니다
읽어주셔서 고맙습니다.
'개발 이야기 > 개발자 이야기' 카테고리의 다른 글
비주얼스튜디오 단축키 (바로가기 키 설정, 기본 바로가기 키 소개) (0) | 2019.02.07 |
---|---|
[데이터베이스] 오라클 ORA-30036 에러 해결 (새그먼트를 8만큼 실행취소 테이블스페이스 'UNDOTBS1'에서 확장할 수 없음) (0) | 2019.02.01 |
카이사르 암호 시저암호 치환암호 Rot13 키없는 암호 알고리즘 (693) | 2018.12.22 |
[데이터베이스] ORA-01013 사용자가 현재 작업의 취소를 요청했습니다.(user requested cancel of current operation) 해결방법(CDatabase 타임아웃 설정,timeout set) (0) | 2018.11.18 |
[데이터베이스] Window(윈도우)7 과 10 에서의 ODBC 드라이버 등록하기 (0) | 2018.11.16 |
댓글