SQL vaicājumi ar predikātu ALL, TOP, DISTINCT, DISTINCTROW

  • Jul 26, 2021
click fraud protection

Predikāts ir iekļauts starp klauzulu un lauka vārdu, lai iegūtu, iespējamie predikāti ir:

  • VISI: Atgriež visus tabulas laukus
  • TOPS: Atgriež noteiktu tabulas ierakstu skaitu
  • ATŠĶIRT: Izlaist ierakstus, kuru atlasītie lauki pilnībā atbilst
  • ATŠĶIRT: Izlaist ierakstu dublikātus, pamatojoties uz visu ierakstu, nevis tikai uz atlasītajiem laukiem.

VISI (* var izmantot tā vietā):

Sludinājumi

Ja neviens no predikātiem nav iekļauts, tiek pieņemts viss. Datu bāzes programma atlasa visus ierakstus, kas atbilst SQL priekšraksta nosacījumiem. Nav ērti ļaunprātīgi izmantot šo predikātu, jo mēs piespiežam datu bāzes dzinēju analizēt tabulas struktūru, lai uzzinātu tajā esošos laukus, ir daudz ātrāk norādīt lauku sarakstu vēlams.

Sludinājumi

Atlasiet visu no Darbinieki;

SELECT * DESDE Darbinieki;

Sludinājumi

TOPS

Atgriež noteiktu ierakstu skaitu, kas atrodas starp ORDER BY klauzulā norādītā diapazona sākumu vai beigām. Pieņemsim, ka mēs vēlamies iegūt pirmo 25 studentu vārdus 1994. mācību gadā:

Sludinājumi

- ATLASIET TOP 25 Vārds, uzvārds DESDE Studenti

- SAKĀRTOT PĒC Piezīme DESC;

Sludinājumi

Ja klauzula nav iekļauta SAKĀRTOT PĒC, vaicājums atgriezīs patvaļīgu 25 ierakstu kopu no tabulas Students TOPS tas neizvēlas starp vienādām vērtībām. Iepriekš minētajā piemērā, ja 25. un 26. klases vidējais rādītājs ir vienāds, vaicājums atgriezīs 26 ierakstus. Varat izmantot rezervēto vārdu PERCENT atgriezt noteiktu procentuālo daļu ierakstu, kas ietilpst klauzulā norādītā diapazona sākumā vai beigās SAKĀRTOT PĒC. Pieņemsim, ka pirmo 25 studentu vietā mēs vēlamies 10 procentus no kursa:

- ATLASIET TOP 10 PERCENT Vārds uzvārds DESDE Studenti SAKĀRTOT PĒC Piezīme DESC;

Vērtība, kas seko TOPS jābūt neparakstītam skaitlim.TOPS tas neietekmē vaicājuma iespējamo atjaunināšanu.

ATŠĶIRT

Izlaist ierakstus, kas atlasītajos laukos satur datu dublikātus. Tā, ka katra lauka vērtības, kas uzskaitītas paziņojumā SELECT vaicājumam jābūt unikālam.

Piemēram, vairākiem darbiniekiem, kas uzskaitīti tabulā Darbinieki, var būt viens un tas pats uzvārds. Ja divos ierakstos laukā Uzvārds ir Lopess, šis paziņojums SQL atgriež vienu ierakstu:

- ATLASIET ATŠĶIRT Uzvārds DESDE Darbinieki;

Citiem vārdiem sakot, predikāts ATŠĶIRT atgriež tos ierakstus, kuru lauki ir norādīti klauzulā SELECT ir atšķirīgs saturs. Izmantotā vaicājuma rezultāts ATŠĶIRT tas nav jaunināms un neatspoguļo citu lietotāju veiktās turpmākās izmaiņas.

ATŠĶIRT

Atgriež dažādos ierakstus no tabulas; Atšķirībā no iepriekšējā predikāta, kas aplūkoja tikai atlasīto lauku saturu, tas tiek darīts visa ieraksta saturā neatkarīgi no laukos, kas norādīti klauzula SELECT.

- ATLASIET ATŠĶIRŠANU Uzvārds DESDE Darbinieki;

Ja darbinieku tabulā ir divi ieraksti: Antonio López un Marta López, predikāta piemērs ATŠĶIRT atgriež vienu ierakstu ar vērtību Lopez laukā Uzvārds, jo tajā netiek meklēti dublikāti. Šis pēdējais piemērs atgriež divus ierakstus ar vērtību Lopez uzvārdā, jo visā ierakstā tiek meklēti nedublikāti.

instagram viewer