쿼리결과 중복제거(DISTINCT)
select문의 결과값에서 특정 컬럼만 출력할 경우 중복된 값 들이 나오는경우 제거해서 표시하는 기능
Select distinct 컬럼명1 컬럼명2 ... from 테이블명
update test_db set NOSE_X=10, NOSE_Y=20, NOSE_Z=20 where id =1;
update test_db set NOSE_X=10, NOSE_Y=30, NOSE_Z=40 where id =2;
한 후
select NOSE_X from test_db where NOSE_X ='10';를 하면 결과가 다음과 같이 나오며,
select DISTINCT NOSE_X from test_db where NOSE_X ='10';를 하면 결과는 다음과 같이 나온다.
NOSE_X 가 10인 데이터가 10000개더라도 DISTICT 명령어를 붙이면 하나로 요약되서 나온다.
논리연산자 (AND OR NOT)
SELECT 문의 조건절에 논리 조건 적용해서 적용할 수 있는 연산자
Select * from 테이블명 where (not) 조건1 and/or (not )조건2 ...
로 사용 할 수 있다.
일단 insert into test_db(ID,NOSE_X,NOSE_Y,NOSE_Z) values (3,10,30,50);
insert into test_db(ID,NOSE_X,NOSE_Y,NOSE_Z) values (4,20,10,60);
insert into test_db(ID,NOSE_X,NOSE_Y,NOSE_Z) values (5,20,40,100);를 해주고 ..
select * from test_db where NOSE_X ='10' and NOSE_Y = '10'
select * from test_db where NOSE_X ='10' or NOSE_Y = '10'
and 명령어를 쓰면 해당 조건을 둘다 충족하는 데이터가 없어 안나오고 or명령어는 10이거나 y 가 10인 결과가 다 나오게 된다. (between 과 in도 마찬가지로 사용 가능)
결과정렬 (Order by)
Select문의 결과값을 특정한 컬럼을 기준으로 오름차순/ 내림차순으로 정렬해서 표시
select * from 테이블명 where 조건절 oreder by 컬럼명!! asc / desc
참고로 기본값은 오름차순이다.
select * from test_db where NOSE_X ='10' order by NOSE_Y desc;를 사용하면 결과는 다음과 같다.
select * from test_db where NOSE_X ='10' order by NOSE_Y asc;의 결과는 참고로 다음과 같다.
각각 NOSE_Y로 오름차순 , 내림차순으로 정렬된것을 확인할 수 있다.
이상으로 중복제거 논리연산자와 결과정렬 에 대해서 알아봤습니다.
'컴퓨터 프로그래밍' 카테고리의 다른 글
C#에서 Python 으로 만들어진 딥러닝 스크립트를 돌려보자 PROJECT (1) | 2019.06.19 |
---|---|
Mysql DML LIMIT 집합함수 유용한 함수들. (0) | 2019.06.18 |
Mysql CRUD 실습3 (0) | 2019.06.18 |
mysql CRUD 실습2 (0) | 2019.06.18 |
Mysql CRUD 실습 (0) | 2019.06.18 |