štvrtok, 20 jún 2019 10:27 Written by 3402 times
Rate this item
(0 votes)

MS SQL - výber požadovaného počtu riadkov z výberu riadkov príkazom SELECT

Zdravím databázových programátorov pod MS SQL. Dnes si ukážeme zopár malých príkladov, ako vybrať požadovaný počet riadkov z tabuľky. To znamená, že kritérium filtra je iba podmienka počet prvých n riadkov. Na tento účel sa v MS SQL používa príkaz TOP.

Príklady:

-- pre porovnanie ...
SELECT *
FROM MyTable
ORDER BY DateRecord DESC
;

-- použitie príkazu TOP na vyňatie potrebného počtu riadkov z pohladu/výberu dát na základe zadaného počtu riadkov v príkaze TOP ...
SELECT TOP 10 *
FROM MyTable
ORDER BY DateRecord DESC
;

-- zobrazi 1% riadkov z celkového počtu riadkov v zadanom výbere ...
SELECT TOP (1) PERCENT *
FROM MyTable
ORDER BY DateRecord DESC
;

-- zobrazi 1% riadkov z celkového počtu riadkov v zadanom výbere a zároveň, ak sa bude nachádzat viac riadkov s rovnakým dátumom a
-- časom ako posledný riadok, budu zobrazené aj tie záznamy aj napriek
-- tomu, ze by malo byt zobrazených riadkov viac ako 1% 
SELECT TOP (1) PERCENT WITH TIES *
FROM MyTable
ORDER BY DateRecord DESC
;

Dúfam, že tieto zdrojové SQL kódy pomôžu mnohým programátorom a ušetria vela času pri vymýšlaní a programovaní.

S pozdravom. Alojz Benďák.

Last modified on štvrtok, 20 jún 2019 10:31
Alojz Benďák

Autor je administrátor webu a venuje sa programovaniu takmer 23 rokov.

  • prvý kontakt s počítačmi na strednej škole - PMD 1,2,3, PP06, Atari, Sinclair (programovanie v jazyku: strojový kód, basic a pascal):  2 roky
  • na VŠ - jazyky Turbo pascal a Turbo C: 1rok
  • programovanie databázového ekonomického širokoškálneho software v Delphi a C++ Borland (databázy Paradox): 8 rokov v Codex s.r.o. Nitra
  • programovanie webových aplikácií na databázach MySQL a MS SQL server: 1 roky na živnosť (firmy: Hermes Nitra, Schindler v Bratislave)
  • pracoval ako DBA v Homecredit Brno a vo VÚB Bratislava ako vyvojár + optimalizácie v SQL a PL/SQL na Oracle 11g (firma Accenture)
  • programoval programy pre súkromné firmy pre HW na skenovanie povrchov nádrží pre skladovanie tekutých palív (pristroj Leica)
  • momentálne pracuje ako DBA pod Oracle 11g a ako vyvojár vnútropodnikových databázových aplikacií v PHP, SQL, C++, C# a interface v PL/SQL: 11 rokov
  • ďalej programuje s HTML, CSS, Ajax, Javascript, VBA, MS visual C++ a C# malé podporné aplikácie
  • certifikát SQL expert for Oracle 11g   
  • spolupracuje a aktívne učí pre počítačové firmy: Lapis, IVIT v Nitre