ÆäÀÌ¡ Å×½ºÆ®
1.Rs.Move()  2.Rs.AbsolutePage  3.Top 20[NOT IN]  4.TOP 20[IN]  5.TOP 20[MIN]  6.TOP 20[INDEX, MIN)
Á¦°¡ ¾î´À ÆäÀÌ¡ÀÌ Á¦ÀÏ ºü¸¦±î.. °í¹Î ÇÏ´Ù°¡.. Å×½ºÆ®·Î ¸¸µé¾î º¸¾Ò½À´Ï´Ù.
ÃÑ.. 6°¡Áö..ÀÔ´Ï´Ù..

°£´ÜÇÏ°Ô Äõ¸®¸¦ ¼³¸íÇØµå¸®°Ú½À´Ï´Ù.

1. SELECT TOP [ºÒ·¯¿Ã ÃÑ °Ô½Ã¹°¼ö] [Ãâ·Â Çʵå¸í] FROM [Å×ÀÌºí ¸í]

  1¹ø ¸®½ºÆ®´Â ÀÌ Äõ¸® ±¸¹®À» ½á¼­ Çß°í¿ä. ÇöÁ¦ °³½Ã¹°±îÁö À̵¿À» Rs.Move(À̵¿ÇÒ¼ö) ·Î ó¸® Çß½À´Ï´Ù.

2. SELECT TOP [ºÒ·¯¿Ã ÃÑ °Ô½Ã¹°¼ö] [Ãâ·Â Çʵå¸í] FROM [Å×ÀÌºí ¸í]    - 1¹ø°ú µ¿ÀÏ

  1¹ø°ú Äõ¸®±¸¹®Àº µ¿ÀÌÇϰí¿ä. ·¹ÄÚµå¼ÂÀÇ AbsolutePage¸¦ ÀÌ¿ëÇØ¼­ ÆäÀÌ¡À» Çß½À´Ï´Ù.

3. SELECT TOP [ºÒ·¯¿Ã ÃÑ °Ô½Ã¹°¼ö] [Ãâ·Â Çʵå¸í] FROM [Å×ÀÌºí ¸í]

   WHERE [±Û¹øÈ£Çʵå] NOT IN (SELECT TOP [Á¦°ÅÇÒ °Ô½Ã¹°¼ö] [±Û¹øÈ£Çʵå] FROM [Å×À̺í¸í])
   ¿¹Àü¿¡ ÅÂ¿ä »çÀÌÆ®¿¡¼­ º¸¾Ò´ø Äõ¸® ±¸¹®ÀÔ´Ï´Ù.. NOT IN ¶§¹®¿¡.. ¹®Á¦½Ã µÇ¾ú´ø Äõ¸®±¸¹®ÀÌÁÒ.

4. SELECT TOP [ºÒ·¯¿Ã ÃÑ °Ô½Ã¹°¼ö] [Ãâ·Â Çʵå¸í] FROM [Å×ÀÌºí ¸í]
   WHERE [±Û¹øÈ£] IN (SELECT TOP [ÆäÀÌÁöÃâ·Â °¹¼ö] [±Û¹øÈ£] FROM
   (SELECT TOP [ºÒ·¯¿Ã ÃÑ °Ô½Ã¹°¼ö] [±Û¹øÈ£] FROM [Å×ÀÌºí ¸í]) AS A ORDER BY [±Û¹øÈ£])
   ORDER BY [±Û¹øÈ£] DESC

   ÀÌ Äõ¸® ±¸¹®Àº 3¹øÀÇ Äõ¸® ±¸¹®ÀÇ ¹®Á¦Á¡À» º¸¿ÏÇÑ ±¸¹®ÀÔ´Ï´Ù. NOT IN ´ë½Å¿¡ INÀ» »ç¿ë Çß½À´Ï´Ù.

5. SELECT TOP [ÆäÀÌÁö Ãâ·Â°¹¼ö] [Ãâ·Â Çʵå¸í] FROM [Å×ÀÌºí ¸í]
   WHERE [±Û¹øÈ£] <= (SELECT MIN([±Û¹øÈ£])
   FROM (SELECT TOP [Á¦°ÅÇÒ °Ô½Ã¹°¼ö] + 1 [±Û¹øÈ£] FROM [Å×À̺í¸í]) AS A)

   5¹øÂ° Äõ¸® ±¸¹®Àº IN, NOT INÀÌ ¾Æ´Ñ Ãâ·ÂÇÒ ¸¶Áö¸· ±Û¹øÈ£ ¹Ù·Î ¾ÕÀÌ ±Û¹øÈ£¸¦ ã¾Æ¼­ 󸮸¦ ÇØÁÖ´Â
   Äõ¸® ±¸¹®ÀÔ´Ï´Ù.

6. SELECT TOP [ÆäÀÌÁö Ãâ·Â°¹¼ö] [Ãâ·Â Çʵå¸í] FROM [Å×À̺í¸í]
   WHERE [±Û¹øÈ£] <= (SELECT MIN([±Û¹øÈ£])
   FROM (SELECT TOP [Á¦°ÅÇÒ °Ô½Ã¹°¼ö] + 1 [±Û¹øÈ£]
   FROM [Å×À̺í¸í] WHERE [À妽º] = [½ÃÀÛÀ妽º¹øÈ£] AND [À妽º] = [³¡À妽º¹øÈ£]) AS A
   WHERE [À妽º] = [½ÃÀÛÀ妽º¹øÈ£] AND [À妽º] = [³¡À妽º¹øÈ£])
   AND [À妽º] = [½ÃÀÛÀ妽º¹øÈ£] AND [À妽º] = [³¡À妽º¹øÈ£]

   6¹øÀç Äõ¸®´Â.. ±Û¿¡ À妽º(°¡Äª)¶ó´Â Çʵ带 Çϳª ´õ Ãß°¡ ÇØ¼­.. ±Û ±âº» 2000°³¸¶´Ù (°¡º¯ÀûÀÔ´Ï´Ù)
   À妽º¸¦ Áõ°¡ ½ÃÄ×½À´Ï´Ù. Áï 2000°³¸¦ ÇϳªÀÇ ¹­À½À¸·Î ¸¸µç°ÍÀÔ´Ï´Ù.
   ±× À妽º¸¦ ±âÁØÀ¸·Î 󸮸¦ ÇØÁÖ¾ú½À´Ï´Ù.(±âº» °³³äÀº ¿µ¾î »çÀü ÀÔ´Ï´Ù ¤Ñ¤Ñ;)

À§¿Í °°ÀÌ °£´ÜÇÑ ±âº» Äõ¸® ±¸¹®À» ¼³¸í? Çß½À´Ï´Ù.
°Ô½Ã¹°Àº 100¸¸°³¸¦ ³Ö°í Å×½ºÆ®¸¦ Çß½À´Ï´Ù.
Å×½ºÆ® °Ô½ÃÆÇÀ» º¸½Ã·Á¸é.. ¸ÇÀ§¿¡ °¢ °Ô½ÃÆÇÀ» ¸µÅ©¸¦ °É¾ú½À´Ï´Ù.
¼­¹ö°¡ ±¸·Á¼­.. Á¦´ë·Î µÉÁö ¸ð¸£Áö¸¸..
Á¦ ³ëÆ®ºÏ
(CPU : p4-1.8, RAM : 768Mb, ÄÄÆÑ ÇÁ¸®ÀÚ¸®¿À 2820AP, ȯ°æ : À©µµ¿ì2003 MSSQL2000)
¿¡¼­ Å×½ºÆ® ÇØº» ºÁ·Î´Â óÀ½ÆäÀÌÁö(1), ¸¶Áö¸· ÆäÀÌÁö(50000) ó¸® ½Ã°£ÀÌ ¾Æ·¡¿Í °°½À´Ï´Ù.(´ÜÀ§ ms)

1 : 320    12289.06
2 : 273    11476.56
3 : 289    4406.25
4 : 289    2695.31
5 : 289    1218.75
6 : 7.81    23.44

¾öû³­ Â÷À̰¡ ³ªÁÒ??
±âº»ÀûÀ¸·Î ±Û¹øÈ£¿¡ Clustered Index, À妽º¹øÈ£, ±Û±íÀÌ¿¡ Non Clustered Index¸¦ °É¾î µÎ¾ú½À´Ï´Ù.
¾öû³­ Â÷ÀÌ·Î ÀÎÇØ Å×½ºÆ®·Î ¸¸µç Àú ¶ÇÇÑ ÀÔÀÌ Â½ ¹ú¾î Áý´Ï´Ù ¤Ñ¤Ñ;;

À§ ÆäÀÌ¡ ·ÎÁ÷Àº ¿©±â Àú±â¼­ ÁÞ¾î µè°í ¤Ñ¤Ñ; È®Àå ½ÃŲ °ÍÀÔ´Ï´Ù.

Á¦°¡ ³»°ø ¼öÀ§°¡ ³·Àº °ü°è·Î Á¤È®ÇÑ Å×½ºÆ®¸¦ ÇàÇß´ÂÁö ¸ð¸£Áö¸¸..
ÆäÀÌ¡À¸·Î °í»ýÇϽô ºÐµéÀ» À§ÇØ.. °£·«ÇÏ°Ô ¸¸µé¾î ºÃ½À´Ï´Ù.

±âº» Å×½ºÆ®´Â Á¦ ȨÆäÀÌÁö¿¡¼­ ÇØº¸½Ã¸é µÇ±¸¿ä.

Å×½ºÆ® aspÆÄÀÏÀº [À̰÷] ¿¡¼­ ´Ù¿î ¹ÞÀ»¼ö ÀÖ½À´Ï´Ù.

Á¦ Ȩ¿¡ ÀÖ´Â ÆäÀÌ¡ ¹æ¹ýÀÌ 6¹øÀÇ À妽º¿Í not in À¸·Î ¸¸µé¾ú½À´Ï´Ù.
(±×¶§´Â °Á.. 2000°³ ¾ÈÂÊ¿¡¼­ ó¸® ÇØÁÖ´Â °ÍÀ̶ó not inÀ» ›§½À´Ï´Ù °Ô½ÃÆÇÀÌ ÇÊ¿ä ÇϽøé..
  ´Ù¿î ¹ÞÀ¸¼Å¼­ ÀúÀå ÇÁ·Î½ÃÀú´Ì ¸®½ºÆ® ºÎºÐÀ» ¼öÁ¤ ÇϽøé. .´õ¿í ÄêÀûÇÏ°Ô »ç¿ë ÇϽǼö ÀÖÀ»°ÍÀÔ´Ï´Ù)

p.s ±Ã±ÝÇϽŠÁ¡À̳ª ¹®ÀÇ »çÇ×Àº Á¦ ȨÆäÀÌÁöÀÇ Å×½ºÆ® °Ô½ÃÆÇ ¹ö±× ¸®Æ÷Æ®¿¡ Àû¾î Áֽñ⠹ٶø´Ï´Ù.