[ogulnie SQL]Numer wiersza
Mwa - 14-12-2006 16:08
[ogulnie SQL]Numer wiersza
Cze?? Wszystkim mam pytanie które mnie od wczoraj nurtuje a niewiem jak jednoznacznie o to zapyta? google: chce ?eby zapytanie zwróci?o obok kolumn z danymi te? kolumne z numerem wiersza od 1 do count(*), niechodzi tu o ID/pk tylko subiektywny numerek w wyniku, oczywi?cie mozna to zrobi? w programie klienta ale nie o to chodzi
w MS SQL 2005 jest Row_Number() na MS SQL 2000 móg?bym to zrobi? za pomoc? kursora i jaki? tabel tymczasowych albo zmiennych tablicowych (wiem ?e nie eleganckie ;) w pgSQL pewnie podobnie jak w msSQL 2000 jako? niemia?em potrzeby uczy? si? pgSQLa (cho? wygl?dan na b. rozbudowany nisz j?zyk w msSQLu) na mySQL (co dlamnie wa?ne z punktu widzenia PHP) niemam poj?cia jak to zrobi?
podam jedyny przyk?ad jaki uda?o mi si? wymy?li? na sytuacje w której to jest potrzebne:
mamy tabele z 2000 najbogadszymi lud?mi ?wiata która ma kolumny imie varchar(50) nazwisko varchar(50) i kasa int(2) czyli ilo?? milionów $ na k?cie ;)
teraz ?eby mie? tablice od najbogadszego to: SELECT imie,nazwisko,kasa FROM bogacze ORDER BY kasa DESC
teraz chcia?bym mie? te? kolumne z pozycj? bogacza jak? zajmuje na li?cie ... u?yje fikcyjnej funkcji Row_nr() która dzia?a tak jak opisa?em wy?ej
SELECT Row_nr() as nr , imie,nazwisko,kasa FROM bogacze ORDER BY kasa DESC
teraz chce mie? liste bogaczy którzy maj? na imie 'Felix' ??cznie z pozycj? jak? zajmuj? w ogulnym rankingu :
SELECT nr,imie,nazwisko,kasa FROM (SELECT Row_nr() as nr , imie,nazwisko,kasa FROM bogacze ORDER BY kasa DESC) Bogacze_ranking WHERE imie='Felix'
to pewnie szkolny przyk?ad ale ja szko?e sk?czy?em jusz pare lat temu i niepami?tam ?eby? my tam brali takie co?,
Wielkie dzi?ki za wszelkie wypowiedzi na ten temat, pozdrawiam Marcin
Wojtek pBT (prac) - 14-12-2006 16:08
Mwa napisa?(a): > Cze?? Wszystkim > mam pytanie które mnie od wczoraj nurtuje a niewiem jak jednoznacznieo > to zapyta? google: > chce ?eby zapytanie zwróci?o obok kolumn z danymi te? kolumne znumerem > wiersza od 1 do count(*), niechodzi tu o ID/pk tylko subiektywny numerek > w wyniku, oczywi?cie mozna to zrobi? w programie klienta ale nie oto > chodzi > > w MS SQL 2005 jest Row_Number() > na MS SQL 2000 móg?bym to zrobi? za pomoc? kursora i jaki? tabel > tymczasowych albo zmiennych tablicowych (wiem ?e nie eleganckie ;) > w pgSQL pewnie podobnie jak w msSQL 2000 jako? niemia?em potrzeby uczy? > si? pgSQLa (cho? wygl?dan na b. rozbudowany nisz j?zyk w msSQLu) > na mySQL (co dlamnie wa?ne z punktu widzenia PHP) niemam poj?cia jak to > zrobi?
1) K**** U?YWAJ S?OWNIKA ORTOGRAFICZNEGO.
2) Zmienne mySQL SELECT @A = 1; SELECT @A = @a+1 AS no, * FROM foo;
> to pewnie szkolny przyk?ad ale ja szko?e sk?czy?em jusz pare lat temu i > niepami?tam ?eby? my tam brali takie co?,
Jak wida? nie tylko do tego si? nie przyk?ada?e?
> > Wielkie dzi?ki za wszelkie wypowiedzi na ten temat, pozdrawiam Marcin > >
pBT
Mwa - 14-12-2006 16:08
> 1) K**** U?YWAJ S?OWNIKA ORTOGRAFICZNEGO. K**** M** J***** H*** My?lesz ?e P*J***** ortografia jest gorsza od takiego P*********GO s?ownictwa ;)
> 2) Zmienne mySQL > SELECT @A = 1; > SELECT @A = @a+1 AS no, * FROM foo; Wielkie dzi?ki za pomoc, musze jeszcze sprawdzi? jak to w podzapytaniu urzy? albo widoku ale OK :] jeszcze raz dzi?ki
Pozdrawiam Marcin
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
jak to =?ISO-8859-2?Q?zrobi=E6=2E=2E=2E=3F_TSQL_sql_server?==?ISO-8859-2?Q?_?=
Jak =?windows-1250?Q?pobra=E6_szacowan=B9_wielko=9C=E6_zbiory_wy nikowego_w_MS?==?windows-1250?Q?_SQL_2005=3F?=
=?iso-8859-2?Q?=5BMS_SQL=5D_Czy_mo=BFna_wywo=B3a=E6_funkcje_t ylko_raz_dla?==?iso-8859-2?Q?_ca=B3ego_zbioru_=BCr=F3d=B3owego=3F?=
[MSSQL] =?ISO-8859-2?Q?zgodno=B6ci_z_licencjami_Microsoft_?==?ISO-8859-2?Q?SQL_Server?=
=?ISO-8859-2?Q?k=B3opot_z_uruchomieniem_MY_SQL_dla_C?==?ISO-8859-2?Q?MS_i_CRM_na_Fedora_Core_3?=
Oracle PL/SQL Wstawianie =?ISO-8859-2?Q?wynik=F3w_kolekcji_d?==?ISO-8859-2?Q?o_tabeli?=
[MSSQL] ACCESS - SQL =?ISO-8859-2?Q?B=B3ad_w_konwersji_lic?==?ISO-8859-2?Q?zb?=
=?iso-8859-2?Q?=5Bmssql=5D_Zapytania_rekurencyjne__-_czy_sk=B3adnia_sql?==?iso-8859-2?Q?_co=B6_takiego_przewiduje_=3F?=
[Oracle PL/SQL] Cursor i zapis =?ISO-8859-2?Q?rekord=F3w_do_?==?ISO-8859-2?Q?kolejnych_plik=F3w?=
=?iso-8859-2?Q?=5BMySQL=5D_Co_minimalnie_potrzebne_zeby_mie=E 6_klienta_My?==?iso-8859-2?Q?SQL_na_Linuxie=3F?=
zanotowane.pldoc.pisz.plpdf.pisz.plshanti.opx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|