SMS 대량 메세지 발송시 특정 테이블에 데이터가 쌓인후
해당 테이블의 값들을 체크하여 통신사의 DB 로 싸줘 SMS 를 발송하게 됩니다.
해당 테이블에 5만건이상의 열이 insert 되었을시 웹페이지지에 5만건이상의 테이블을 나타내주는 ASP 페이지 입니다.
초기 곰곰히 생각만 하면 후다닥 가능한데...개념 잡기가 어려워요.. 머리가 잘 안돌아가나봐요. 담배를 끊어야지...
group by 절을 사용해서 Userid 라는 열을 카운트.
데이터 베이스 : SMS
해당 테이블 : Submits
SELECT [SysID]
,[UserID]
,[MessageID]
,[SendPhone]
,[ReceivePhone]
,[Message]
,[ReserveTime]
,[RequestTime]
,[Timeout]
,[Result]
,[Polling]
FROM [SMS].[dbo].[SMS_Submits]
<%
Dim strConnect
strConnect="Provider=SQLNCLI.1;Password=패스워드;Persist Security Info=True;User ID=아이디;Initial Catalog=SMS;Data Source=localhost;"
Set Dbcon = server.CreateObject("ADODB.Connection")
Dbcon.Open strConnect
Set Rs=Server.CreateObject("ADODB.RecordSet")
Sql = "Select count(userid) as cnt ,userid from Submits group by userid having count(userid)>50000"
Rs.Open Sql,Dbcon,3
if not Rs.Eof Then
cnt = Rs("cnt")
userid = Rs("userid")
response.write "<br> 50.000개 초과된 ID : "
response.write userid
response.write " 입니다. <p> 개수는 : "
response.write cnt
response.write " 입니다.<p>"
if cnt > 50000 then
response.write " <br> 50.000개 초과"
else
response.write " <br> 50.000개 초과 없음"
end if
else
response.write "요청한 값이 DB 에는 존재하지 않습니다."
end if
%>