Rekordok véletlen sorrendben

A kollégák megjegyezték, hogy időnként túl hosszúak a blog bejegyzéseim, ezért íme egy rövid (csak az ő kedvükért). A feladvány:

Adott egy Numbers tábla, benne egy ID nevű int típusú mező. Hogyan lehet T-SQL-ben legegyszerűbben a) visszakérni a rekordokat véletlenszerű sorrendben és b) véletlenszerűen kiválasztani egy rekordot?

Egy lehetséges működő megoldás az a) kérdésre:

    SELECT ID FROM Numbers ORDER BY NewID()

A b)-re pedig mindenki tudja innentől a választ, hiszen az csak egy TOP 1-gyel több. És hogy mi történik a háttérben, azt persze megtudhatjuk a végrehajtási tervből:

 

Technorati tags:
Advertisements

Vélemény, hozzászólás?

Adatok megadása vagy bejelentkezés valamelyik ikonnal:

WordPress.com Logo

Hozzászólhat a WordPress.com felhasználói fiók használatával. Kilépés / Módosítás )

Twitter kép

Hozzászólhat a Twitter felhasználói fiók használatával. Kilépés / Módosítás )

Facebook kép

Hozzászólhat a Facebook felhasználói fiók használatával. Kilépés / Módosítás )

Google+ kép

Hozzászólhat a Google+ felhasználói fiók használatával. Kilépés / Módosítás )

Kapcsolódás: %s