복붙노트

[SQL] SQL - 선택 처음 10 행에만?

SQL

SQL - 선택 처음 10 행에만?

어떻게 쿼리의 처음 10 개 개의 결과를 선택합니까?

나는 다음과 같은 쿼리의 첫 번째 10 개 개의 결과를 표시 할 것입니다 :

SELECT a.names,
         COUNT(b.post_title) AS num
    FROM wp_celebnames a
    JOIN wp_posts b ON INSTR(b.post_title, a.names) > 0
    WHERE b.post_date > DATE_SUB(CURDATE(), INTERVAL 1 DAY)
GROUP BY a.names
ORDER BY num DESC

해결법

  1. ==============================

    1.SQL 서버에서 사용 :

    SQL 서버에서 사용 :

    select top 10 ...
    

    EG

    select top 100 * from myTable
    select top 100 colA, colB from myTable
    

    MySQL의에서, 사용 :

    select ... order by num desc limit 10
    
  2. ==============================

    2.당신의 RDBMS에 따라 달라집니다

    당신의 RDBMS에 따라 달라집니다

    MS SQL 서버

    SELECT TOP 10 ...
    

    MySQL의

    SELECT ... LIMIT 10
    

    사이베이스

    SET ROWCOUNT 10
    SELECT ...
    

    기타.

  3. ==============================

    3.MySQL은 :

    MySQL은 :

    SELECT * FROM `table` LIMIT 0, 10
    
  4. ==============================

    4.는 ANSI SQL의 대답은 FIRST를 FETCH입니다.

    는 ANSI SQL의 대답은 FIRST를 FETCH입니다.

    SELECT a.names,
             COUNT(b.post_title) AS num
        FROM wp_celebnames a
        JOIN wp_posts b ON INSTR(b.post_title, a.names) > 0
        WHERE b.post_date > DATE_SUB(CURDATE(), INTERVAL 1 DAY)
    GROUP BY a.names
    ORDER BY num DESC
    FETCH FIRST 10 ROWS ONLY
    

    당신이 관계를 포함 할 경우, 대신 타이로 처음 10 개 행을 페 않습니다.

    지정된 행 수를 건너 뛰려면, 오프셋을, 예를 들어,

    ...
    ORDER BY num DESC
    OFFSET 20
    FETCH FIRST 10 ROWS ONLY
    

    처음 20 개 행을 건너 뛰고 다음 10 개 행을 가져옵니다.

    등 오라클, PostgreSQL을, MS SQL 서버, Mimer SQL과 DB2의 최신 버전 지원

  5. ==============================

    5.신탁

    신탁

    WHERE ROWNUM <= 10  and whatever_else ;
    

    ROWNUM은 각 행의 순서 번호 1..N를 포함하는 마법 변수입니다.

  6. ==============================

    6.표준 SQL에서는 사용할 수 있습니다 :

    표준 SQL에서는 사용할 수 있습니다 :

    ... FIRST 10 ROWS ONLY을 FETCH

    이는 12.1 (이상) DB2, PostgreSQL을, 오라클에서 지원됩니다

  7. ==============================

    7.

    SELECT *  
      FROM (SELECT ROW_NUMBER () OVER (ORDER BY user_id) user_row_no, a.* FROM temp_emp a)  
     WHERE user_row_no > 1 and user_row_no <11  
    

    이 파예드 내가 5 월 일, 난 당신에 모습을 가질 수있는 몇 가지 유용한 dbscripts이

    유용한 Dbscripts

  8. ==============================

    8.당신이 찾고있는 것은 LIMIT 절입니다.

    당신이 찾고있는 것은 LIMIT 절입니다.

    SELECT a.names,
             COUNT(b.post_title) AS num
        FROM wp_celebnames a
        JOIN wp_posts b ON INSTR(b.post_title, a.names) > 0
        WHERE b.post_date > DATE_SUB(CURDATE(), INTERVAL 1 DAY)
    GROUP BY a.names
    ORDER BY num DESC
       LIMIT 10
    
  9. ==============================

    9.파이어 :

    파이어 :

    SELECT FIRST 10 * FROM MYTABLE
    
  10. ==============================

    10.

    SELECT* from <table name> WHERE rownum <= 10;
    
  11. ==============================

    11.

    SELECT  Top(12) Month, Year, Code FROM TempEmp 
    ORDER BY  Year DESC,month DESC
    
  12. ==============================

    12.PostgreSQL의 :

    PostgreSQL의 :

    SELECT ... LIMIT [num] OFFSET [num];
    
  13. from https://stackoverflow.com/questions/1891789/sql-select-first-10-rows-only by cc-by-sa and MIT license