Diskuze: Navigační tlačítka
V předchozím kvízu, Online test znalostí SQL a databází, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 9 zpráv z 9.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí SQL a databází, jsme si ověřili nabyté zkušenosti z kurzu.
nějak nevím co přesně potřebuješ a co máš?
Až budeš vypisovat co už máš/nemáš. V jakém jazyce děláš serverový script (PHP, ASP.NET) a jakou máš databázi (MySQL, MS-SQL, Oracle).
Byl tu machr na PHP paginátor, tam je dost hotových řešení. Najdi si ho.
Dělám to v ASP.NET, mám MSSQL. Mám připojenou databázi a příkazy SELECT(tabulka), UPDATE a DELETE mi fungují. Potřebuji pouze navigovat v tabulce SELECT po řádcích (první, poslední, předchozí, následující). Nevím, zda jsem ti správně odpověděl.
jo. První je jednoduchý.
SELECT TOP 1 * FROM tabulka
Poslední taky, prostě to seřadíš naopak.
Teď mě napadlo že možná poslední by mohl jít SELECT BOTTOM 1 ...
Předchozí/následující se nedozvíš z čeho, řešil bych to asi poddotazem.
Ten předchozí a následující bych chtěl odvozovat od vyselectovaného řádku. Ten selektuji klikem na řádek dataGrig
"SELECT TOP 1 * FROM tabulka" funguje, ale "SELECT BOTTOM 1 * FROM tabulka" ne.
Protože žádný SELECT BOTTOM neexistuje...
Pokud máš SQL Server 2012 můžeš použít syntaxi
OFFSET číslo ROWS
FETCH NEXT číslo ROWS ONLY;
mrkni na dokumentaci...
aha, tak pak zkus něco jako:
;WITH PageNumbers AS(
SELECT [Tvoje sloupce],
ROW_NUMBER() OVER(ORDER BY [Tvůj sloupec]) ID
FROM [Tabulka]
)
SELECT *
FROM PageNumbers
WHERE ID BETWEEN (číslo)
AND (číslo)
Pěkně je to vysvětleno zde: http://stackoverflow.com/…-server-2008
Zobrazeno 9 zpráv z 9.