Asp : 동적인 템플릿 기반 페이지
Asp 중요 5개 개체.
MS : 파일을 관리해주는 시스템.
Ado : 비주얼베이직등 언어가 쿼리를 수행할 수 있게 해주는 도구.
쿼리
Where절을 쓰는 것은 그만큼 작업량을 늘려서 서버에 부담을 준다. 그래서 가능하면 연산자로만 해결하는것이 속도면에서 빠르다.
예1) 성별이 남자인 멤버를 출력하시오.
Select * from member where jumin like'___-[13]%'
예2) 010번호사용자 멤버 출력
날짜함수를 이용한 출력
- 날짜 데이터 형식
Datetime 1975.1.1 ~ 9999.12.31
Smalldatetime 1990.1.1 ~ 2079.01.06
- Datepart 약어
Year yy, yyyy
Quarter qq, q
Month
- 날짜 함수
현재 날짜 불러오기 Select getdate()
현재 날짜에서 5일 더하기 Select dateadd(day,5,getdate())
Select dateadd(dd,5,getdate())
Select dateadd(month,5,getdate())
Select datediff(day,getdate(),'2008.04.23')
Select convert(varchar(20),getdate(),1)
Select convert(varchar(20),getdate(),2)
Select convert(varchar(20),getdate(),101)
Select convert(varchar(20),getdate(),102)
Select convert(varchar(20),getdate(),103)
Select convert(varchar(20),getdate(),104)
Select convert(varchar(20),getdate(),105)
두 자리 연도(yy)(1) | 네 자리 연도(yyyy) | 표준 | 입/출력(3) |
- | 0 또는 100(1, 2) | 기본값 | mon dd yyyy hh:miAM(또는 PM) |
1 | 101 | 미국 | mm/dd/yyyy |
2 | 102 | ANSI | yy.mm.dd |
3 | 103 | 영국/프랑스 | dd/mm/yy |
4 | 104 | 독일 | dd.mm.yy |
5 | 105 | 이탈리아 | dd-mm-yy |
6 | 106 (1) | - | dd mon yy |
7 | 107 (1) | - | Mon dd, yy |
8 | 108 | - | hh:mi:ss |
- | 9 또는 109(1, 2) | 기본값 + 밀리초 | mon dd yyyy hh:mi:ss:mmmAM(또는 PM) |
10 | 110 | 미국 | mm-dd-yy |
11 | 111 | 일본 | yy/mm/dd |
12 | 112 | ISO | yymmdd |
- | 13 또는 113(1, 2) | 유럽 기본값 + 밀리초 | dd mon yyyy hh:mi:ss:mmm(24h) |
14 | 114 | - | hh:mi:ss:mmm(24h) |
- | 20 또는 120(2) | ODBC 표준 | yyyy-mm-dd hh:mi:ss(24h) |
- | 21 또는 121(2) | ODBC 표준(밀리초 포함) | yyyy-mm-dd hh:mi:ss.mmm(24h) |
- | 126 (4) | ISO8601 | yyyy-mm-ddThh:mi:ss.mmm(공백 없이) |
| 127(6, 7) | ISO8601(Z 표준 시간대) | yyyy-mm-ddThh:mi:ss.mmmZ (공백 없이) |
- | 130 (1, 2) | 회교식(5) | dd mon yyyy hh:mi:ss:mmmAM |
- | 131 (2) | 회교식(5) | dd/mm/yy hh:mi:ss:mmmAM |
예제)
가입한지 6개월이 안되는 회원을 검색하시오.
Select * from notice where regdate > dateadd(month,-6,getdate())
집계함수 -> 필요로하는 필드 하나만 선택하여 작업이 됨.
Select sum(age) from member
Select min(age) from member
Select max(age) from member
Select count(age) from member
Select avg(age) from member
그룹으로 묶어서 집계하기
Select address, avg(age) from member group by address
지역별로 그룹을 묶어서 멤버수 표현하기
Select address, count(address) from member group by address
서울지역 회원의 평균나이 구하기 -> (group by)가 있을 경우에만 (having)을 쓸수 있음.
select address,avg(age) from member group by address having address='서울시'
수치연산 함수
Select abs(-3),abs(3)
구성함수 :
@ : 지역변수
@@ (전역변수)
기타함수
서브쿼리
- 쿼리의 중복이 가능하다.
- 쿼리의 결과값을 가지고 다시 쿼리의 입력값으로 사용.
Select * from 고객 where 아이디 = '땡큐'
Select * from 고객 where 아이디 = ('?')
(본래 쿼리)
신상정보 테이블과 나이테이블이 따로 있는 경우에 30살 이하의 멤버 신상을 구하라.
select * from member where id in(select id from member where age < 30)
2.(서브쿼리에서 추출한 id토대로 신상정보 출력) 1.(나이있는 테이블에서 조건맞는 id 추출)
select * from noti