여정의 기록
SQL 명령문 예시들 본문
728x90
select dname, count(*)
from teach)course
where eyear=2020
group by dname
having count(*) > 1
특정학과에 종속적이지 않은 필수 과목 2과목을 입력하시오
값을 넣어주지 않으면 자동으로 null값이 들어간다.
insert into course(cno, cname)
values (1001,'도덕')
insert into course
values (1002,'한국사',null)
교과목중 필수 과목을 검색하시오.
null 값인 것을 찾고자 하면 in null로 해야한다.
select *
from course
where dname = null # error
select * from course
where dname is null
교과목중 필수 과목이 아닌 과목을 검색하시오.
select * from course
where dname is not null
교과목중 소속학과가 없는 경우 '필수과목'으로 표시되록 검색하시오.
nvl 함수는 컬럼값이 null인 경우 원하는 값으로 replace해준다.
select cno, cname, nvl(dname, '필수과목')
from course
where dname in null
교과목 중 소속학과가 없는 경우 '필수과목'으로 표시하고 검색 처음에 나오도록 검색하시오.
보통 정렬시 null값이 먼저 위치하게 된다.
select cno, cname nvl(dname, '필수과목')
from course
oder by nvl(dname, '필수과목') desc
select cno, cname, nvl(dname,'필수과목')
from course
order by dname
Order by nvl() 부분을 간단히 수정
select cno, cname, nvl(dname, '필수과목')
from course
order by nvl(dname, '필수과목') desc
# select 절에 오는 순서대로 인덱스값을 가지고 그 인덱스값을 기입하는 방법
select cno, cname, nvl(dname, '필수과목')
from course
order by 3 desc
# 별칭줘서 간단하게 하기
select cno, cname, nvl(dname, '필수과목') as dname2
from course
order by dname2 desc
'정'씨 성을 가진 학생을 검색하시오
select * from student
where sname like '정%'
이름중에 '준'이 들어가는 학생을 검색하시오.
select * from student
where sname like '%준%'
'컴공학과'와 '통계학과' 교수님 이름과 학과를 검색하시오
select pname, dname
from professor
where dname = '컴공학과' or dname = '통계학과'
select pname, dname from professor
where dname in ('컴공학과','통계학과)
전체 학생 수를 검색하시오
select count(*)
from student
연도별로 입학한 학생 수를 검색하시오
select eyear,count(*)
from student
group by eyear
2020년에 개설된 학과별 강의 수를 검색하시오
select dname, couont(*)
from teach_course
where eyear=2020
group by dname # 강의명별로 정돈해준다
2020년에 개설된 학과별 강의수가 2개 이상인 학과와 강의 수를 검색하시오
having : group by에 대한 조건where절
select dname, count(*)
from teach_course
where eyear=2020
group by dname
having count(*) >1
학과별 교수들의 총연봉, 최대연봉, 평균연봉을 검색하시오
select dname, sum(salary), max(salary), avg(salary)
from professor
group by dname
학과별 교수들의 평균 연봉을 보기 쉬운 숫자로 변경하여 검색하시오
cast 함수를 이용하여 자료형 변경 가능
select dname, cast(avg(salry) as numeric)
from professor
group by dname
728x90
'공부중 ... > 데이터처리와활용' 카테고리의 다른 글
SQL 예시 4 (0) | 2022.12.06 |
---|---|
SQL 예시 3 (1) | 2022.12.03 |
SQL 명령어 (0) | 2022.10.10 |
[데이터처리와활용] 관계형 데이터베이스 설계1(E-R모델 관계스키마) (0) | 2022.09.20 |
[데이터처리와활용] 관계형데이터베이스 (0) | 2022.08.24 |