Diskuze: výpis posledného riadku tabulky so sperovým číslom ktoré obsahuje čislo 3

Ostatní jazyky SQL SQL a databáze výpis posledného riadku tabulky so sperovým číslom ktoré obsahuje čislo 3

Avatar
renew357
Člen
Avatar
renew357:

Chcem vypísať len posledný riadok z tabuĺky ktorý obsahuje číslo 3 v stĺpci postal code
Tento skript však vypíše len samotné číslo, a nie celý riadok :(
Ako na to?

SELECT last(PostalCode) FROM Customers WHERE PostalCode LIKE '%3%' ;

http://www.w3schools.com/sql/trysql.asp?…

Dakujem

 
Odpovědět 3.8.2014 20:57
Avatar
Odpovídá na renew357
Michal Štěpánek:

Pokud ten sloupec "postal code" obsahuje víckrát to číslo 3, podle čeho chceš určovat, který řádek má být poslední? Když to setřídíš podle jiného sloupce, může být poslední s trojkou úplně jiný...

Nahoru Odpovědět  +1 3.8.2014 21:34
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
renew357
Člen
Avatar
renew357:

myslel som že podľa nejakého defaultneho usporiadania si vyberie posledný, ďakujem
len priznam že neviem ako do tohoto skriptu zahrnuť OREDER o_O

 
Nahoru Odpovědět 3.8.2014 21:57
Avatar
Odpovídá na renew357
Michal Štěpánek:

Kdybys trošku popsal strukturu té tabulky, pracovalo by se s tím lépe...
Důležité je však určit, který ten řádek považuješ za "poslední" a proč? Co v tom řádku určuje, že je "poslední"?
jinak ORDER se zahrnuje např. takto:

SELECT něco FROM tabulka WHERE podmínka ORDER BY sloupec;
Nahoru Odpovědět 4.8.2014 6:40
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
renew357
Člen
Avatar
renew357:

ono ta databáza je dostupná na url ktorú mam v prvom poste,

http://www.w3schools.com/sql/trysql.asp?…

skusal som už aj tento order ale nefungoval :/

SELECT last(PostalCode) FROM Customers WHERE PostalCode LIKE '%3%'  ORDER BY CustomerID;
 
Nahoru Odpovědět 4.8.2014 11:11
Avatar
Odpovídá na renew357
Michal Štěpánek:

Funguje, jen ti vybere pouze tu jednu položku.když to zadám takhle:

SELECT * FROM Customers WHERE PostalCode LIKE '%3%'  ORDER BY CustomerID;

tak vyjede 29 záznamů. Podle čeho chceš určovat ten konkrétní ("poslední") záznam?

Nahoru Odpovědět 4.8.2014 12:25
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Odpovídá na renew357
Michal Štěpánek:

Když to uděláš takto:

SELECT TOP 1 * FROM Customers WHERE PostalCode LIKE '%3%'  ORDER BY CustomerID DESC;

vypíše to řádek s nejvyšším CustomerID, který má v PostalCode3
a toto:

SELECT TOP 1 * FROM Customers WHERE PostalCode LIKE '%3%'  ORDER BY CustomerID;

zase s nejnižším CustomerID

Nahoru Odpovědět  +1 4.8.2014 12:36
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
renew357
Člen
Avatar
Odpovídá na Michal Štěpánek
renew357:

ďakujem, veĺmi 8-)

Editováno 4.8.2014 12:49
 
Nahoru Odpovědět 4.8.2014 12:48
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.