developer tip

SQL-처음 10 개 행만 선택 하시겠습니까?

copycodes 2020. 8. 17. 09:13
반응형

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

SQL 서버에서 다음을 사용하십시오.

select top 10 ...

예 :

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

MySQL에서는 다음을 사용하십시오.

select ... order by num desc limit 10

RDBMS에 따라 다름

MS SQL 서버

SELECT TOP 10 ...

MySQL

SELECT ... LIMIT 10

Sybase

SET ROWCOUNT 10
SELECT ...

기타.


MySQL에서 :

SELECT * FROM `table` LIMIT 0, 10

신탁

WHERE ROWNUM <= 10  and whatever_else ;

ROWNUM각 행의 시퀀스 번호 1을 포함하는 매직 변수입니다. n .


ANSI SQL 대답은 FETCH FIRST.

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

넥타이를 포함하려면 FETCH FIRST 10 ROWS WITH TIES대신하십시오.

지정된 수의 행을 건너 뛰려면 다음을 사용하십시오 OFFSET.

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

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

최신 버전의 Oracle, PostgreSQL , MS SQL Server, Mimer SQL 및 DB2 등에서 지원됩니다.


DB2

... FETCH FIRST 10 ROWS ONLY


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  

이것은 나를 위해 일했습니다. 내가 볼 수있는 유용한 dbscript가 거의 없다면

유용한 Dbscript


What you're looking for is a LIMIT clause.

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

Firebird:

SELECT FIRST 10 * FROM MYTABLE

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

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

PostgreSQL:

SELECT ... LIMIT [num] OFFSET [num];

참고URL : https://stackoverflow.com/questions/1891789/sql-select-first-10-rows-only

반응형