데이터베이스 만들기 ~ 테이블 만들기 ~ SQL - 데이터 작업 ~ 보기
5541 단어 데이터베이스
데이터베이스 만들기
create DataBase db_HXX
on
(
name=HXX_Data,
filename='D:\Data\HXX_Data.mdf',size=5,
maxsize=15,
filegrowth=2
)
log on
(
name=HXX_LOG,
filename='D;\Data\HXX_LOG.ldf',size=3,
maxsize=10,
fileGrowth=1
)
unlimited 설정 없음
테이블 생성
create table Student
(
sno char(10) primary key,
sfzh char(18) unique,
cname varchar(16) not null,
sex char(2) check(sex=' ' or sex=' '),
dept varchar(30) default' ',
birthday datetime,
score float check(score between 0 and 100),
polity char(8) check(polity=' ' or polity=' ' or polity=' ')
)
복합 키:consteaint pksnocname primary key(sno,cname);
외부 키:consteaint pksc foreign key(sno) references db_student.dbo.tb_student(sno) 키를 설정할 때 참고할 키가 있어야 합니다
검색
질의 기준
술어
비교(비교 연산자)
>,=,<=,!=,<>아니다,!>,!<
범위를 정하다
between a and b ,not between a and b
집합을 확정하다
in, not in 컬렉션 확인
문자 일치
like, not like 문자 일치
빈값
is null , is not null
다중 조건(논리적 술어)
and , or
문자열에 포함할 수 있는 와일드카드
와일드카드
기능
인스턴스
%
0자 이상
'강%'가 강렬하면 임의의 문자열을 연결할 수 있습니다
_(밑줄)
문자
'강 '뒤에 두 글자밖에 없어요.
[ ]
범위의 문자를 나타냅니다.
[0~9] 0~9 사이.
[^ ]
더 이상 어떤 범위의 문자가 아니라는 것을 나타낸다
[^0~9] 더 이상 0~9 사이가 아니에요.
자주 사용하는 라이브러리 함수 및 기능
함수 이름
기능
AVG
열별 평균값
SUM
열에 따라 화합을 구하다
MAX
열의 최대치를 구하다
MIN
열의 최소값을 구하다
COUNT
열별로 개수를 집계하다
distinct 탈중
1. 별명 짓기
1. 별명 짓기
2.조합select sno+'('+sn+')'as학번 이름
3. 문자열 구하기
4. 나이 구하기 year(getdate()) - year(birthday)
5.select top n (n 개) * from 표 또는 top percent n (% n)
6.like where name like'장%'성을 찾습니다.where name like'장 '두 글자를 한정하다
7. In where banji in('14','15') 14 15반 찾습니다.
use db_student17
select * from tb_student where SUBSTRING(sno,7,2) in('14','15')
8. is null
9.order by 정렬where 후 asc 오름차순 (기본값) desc 내림차순
select sno,sn,sex,SUBSTRING(sno,7,2) as ,year(GETDATE())-year(birthday) as from tb_student where SUBSTRING(sno,7,2) in('14') order by asc
10. sum와 avg max min select sum(score), avg(score)from표where 조건
11.count 총수 구하기
use db_student17
select count(*)from tb_student
12.group by 그룹 조회
use db_student17
select sno,count(*)from tb_score
group by sno
use db_Book
select CBS,COUNT(CBS)as from tb_BookInfo
group by CBS having COUNT(CBS)>100
각 반에 몇 명이 있는지 구하고, 순서를 낮추어 순서를 정하다.
use db_student17
select SUBSTRING(sno,5,4) as ,count(sno) as from tb_student
group by SUBSTRING(sno,5,4)
order by desc
13.with rollup 분배 통계 출력 총계
14. 멀티 테이블 조회(내부 연결)
select sno,sc.cno,cn,score
from tb_course c join tb_score sc
on c.cno = sc.cno
select sno,sc.cno,cn,score
from tb_course c,tb_score sc
where c.cno = sc.cno
select s.sno,sn,cn,score
from tb_student s,tb_score sc,tb_course c
where s.sno = sc.sno and sc.cno = c.cno
15. 멀티 테이블 조회(외부 연결)
left outer join *
right outer join *
full outer join *
16. 하위 쿼리(네스트할 수 있음)
= 질의 결과가 하나일 경우 비교 연산자를 사용할 수 있습니다.
use db_student17
select sno,dept
from tb_student
where dept=(select dept from tb_student where sn=’ ’)
IN 질의 결과가 컬렉션으로 반환될 때
예: 20세 이상의 모든 학우를 조회하다
use db_student17
select sn from tb_student where YEAR(birthday) in
(select YEAR(birthday) from tb_student where YEAR(birthday)>20)
All 모두 질의할 때
예: 14반의 모든 학생보다 나이가 많은 학생을 조회하다
use db_student17
select sn from tb_student where YEAR(birthday) > all
(select YEAR(birthday) from tb_student where SUBSTRING(sno,5,4)=0114)
데이터 테이블에서의 데이터 조작
insert into 표열value 값 열 값이 대응하고 () () 두 개의 기록
insert into 테이블 열 select 삽입 결과 집합
업데이트 테이블 set 필드 = 값where 조건 업데이트
delete from 표 where 조건
drop 삭제 테이블
drop table 테이블 이름
truncate table은 로깅에 기록되지 않습니다.
뷰
뷰를 작성하려면 다음과 같이 하십시오.
create view 보기 이름
as
select
뷰를 수정하려면 다음과 같이 하십시오.
alter view 보기 이름 (필드는 있어도 되고 없어도 됩니다)
as
select
뷰를 삭제하려면 다음과 같이 하십시오.
drop view 뷰 이름
질의 뷰:
조회와 같다
뷰를 업데이트하려면 다음과 같이 하십시오.
추가
insert into 보기 이름 (필드)
value(필드 값)
수정
업데이트 보기 이름
set 필드 = 값
where 조건
삭제
delete from 보기 이름
where 조건
색인 만들기
create <> index 인덱스 이름 on 표 (열)
색인 보기
sp_helpindex t_course
색인 삭제
drop index t_course.qwe
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
SQLite의 query로 망설임
이것은 내가 처음 안드로이드 응용 프로그램 개발에서 망설이고, 그 후 해결 된 방법을 비망록으로 철자하고 있습니다.
java에서 SQLite를 이용한 애플리케이션을 작성하는 동안 EditText에 입력된 item이 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.
뷰를 작성하려면 다음과 같이 하십시오.
create view 보기 이름
as
select
뷰를 수정하려면 다음과 같이 하십시오.
alter view 보기 이름 (필드는 있어도 되고 없어도 됩니다)
as
select
뷰를 삭제하려면 다음과 같이 하십시오.
drop view 뷰 이름
질의 뷰:
조회와 같다
뷰를 업데이트하려면 다음과 같이 하십시오.
추가
insert into 보기 이름 (필드)
value(필드 값)
수정
업데이트 보기 이름
set 필드 = 값
where 조건
삭제
delete from 보기 이름
where 조건
색인 만들기
create <> index 인덱스 이름 on 표 (열)
색인 보기
sp_helpindex t_course
색인 삭제
drop index t_course.qwe
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
SQLite의 query로 망설임이것은 내가 처음 안드로이드 응용 프로그램 개발에서 망설이고, 그 후 해결 된 방법을 비망록으로 철자하고 있습니다. java에서 SQLite를 이용한 애플리케이션을 작성하는 동안 EditText에 입력된 item이 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.