DB에서 값을 불러오다보면, IP주소 등 소수점이 들어간 것이 정렬이 제대로 되어있지 않을것이다.
예를 들면,
203.207.231.1
203.207.231.10
203.207.231.100
203.207.231..2
203.207.231.20
203.207.231.200
…
라는 식으로 되어 있는 데 이를 1, 2, 3, 4, … 100, 101, 102…. 로 바꾸기 위해선
불러오는 쿼리문의 정렬을 정의해줄 필요가 있다.
다음과 같이 정의 해주면된다.
ORDER BY CAST(PARSENAME(ipaddress, 4) AS int) , CAST(PARSENAME(ipaddress, 3) AS int) , CAST(PARSENAME(ipaddress, 2) AS int) , CAST(PARSENAME(ipaddress, 1) AS int) |
셀렉트 문과 같이 정해주게 되면,
SelectCommand="SELECT * FROM [iptable] ORDER BY CAST(PARSENAME(ipaddress, 4) AS int) , CAST(PARSENAME(ipaddress, 3) AS int) , CAST(PARSENAME(ipaddress, 2) AS int) , CAST(PARSENAME(ipaddress, 1) AS int); |
SELECT에 본인이 뽑아오고 싶은 것을 써주고, FROM 뒤에 불러오는 테이블명을 적어주고, 다음에 ORDER로 정렬을 해주면 되겠다.
출처: http://mnworld.co.kr'프로그래밍언어 > ASP.NET' 카테고리의 다른 글
Gridview 를 Excel 파일로 Export 하기 (0) | 2010.12.31 |
---|---|
asp.net 페이지 로그인 상태인데 뒤로 페이지가 넘어갈 때 (0) | 2010.12.31 |
ASP.NET 로그아웃 하고 뒤로가기 눌렀을 때 그냥 넘어가는 경우 (0) | 2010.12.31 |
Get 과 Set 메서드의 차이점 (0) | 2010.12.31 |
asp.net 페이지 및 응용 프로그램의 구조 (0) | 2010.12.31 |