sql >> Databasteknik >  >> RDS >> Database

Hur man begränsar resultat i T-SQL

Problem:

Du vill begränsa antalet rader som kommer från en fråga i T-SQL.

Exempel:

I exam tabell, det finns namn på eleverna med resultaten av tentamen.

namn exam_result
Janet Morgen 9
Taya Bain 11
Anne Johnson 11
Josh Kaur 10
Ellen Thornton 8

Du vill få de tre raderna med de bästa provresultaten.

Lösning:

SELECT TOP 3
  *
FROM exam
ORDER BY exam_result DESC;

Resultatet av frågan ser ut så här:

namn exam_result
Taya Bain 11
Anne Johnson 11
Josh Kaur 10

Diskussion:

Efter SELECT nyckelord, använd TOP nyckelord tillsammans med antalet rader du vill hämta (här, 3 ). Kom ihåg att sortera raderna efter exam_result kolumnen i fallande ordning med ORDER BY satsen och DESC nyckelord.

SELECT TOP 3
  *
FROM exam
ORDER BY exam_result DESC;

Om du vill hämta tre rader slumpmässigt istället för de tre bästa, hoppa över ORDER BY del.

SELECT TOP 3
  *
FROM exam;

Naturligtvis kan du hämta hur många rader du vill. Byt bara ut 3 med önskat nummer.


  1. Gruppera efter månad och år i MySQL

  2. Hur man genererar tabell API-paket i Oracle SQL Developer?

  3. Hur man skapar utländsk nyckelbegränsning med ON DELETE CASCADE i SQL Server - SQL Server / TSQL Tutorial Del 80

  4. Maximera effektiviteten av databasfrågor för MySQL - del två