Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MYSQL] Pozycja rekordu w zwracanych wynikach
jajcarzd1
post
Post #1





Grupa: Zarejestrowani
Postów: 215
Pomógł: 19
Dołączył: 24.12.2003
Skąd: Przemyśl

Ostrzeżenie: (0%)
-----


Witam

Mam pytanie czy istnieje jakiś operator, funkcja w mysql-u dzięki której mógłbym uzyskać informację na jakiej pozycji znajdzie się pewien rekord w zwróconych wynikach, przy założeniu oczywiście konkretnego ordera. Oczywiście mogę pobrac wszystkei dane i przelecieć sobie po tablicy wnikowej w php, ale interesuje mnie to czy mozna te dane pobrać już wcześniej w samym zapytaniu. Np. pobieram wszystkie dane w porządku rosnącym i na którym miejscu jest rekord o id 50.

Dzięki pozdro.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




sorki ze sie czepiam, ale jak sprawdzales czy nie ma bledu zapytania?
Bo jak bys mial blad zapytania, to wtedy faktycznie dostaniesz 0.
Go to the top of the page
+Quote Post
jajcarzd1
post
Post #3





Grupa: Zarejestrowani
Postów: 215
Pomógł: 19
Dołączył: 24.12.2003
Skąd: Przemyśl

Ostrzeżenie: (0%)
-----


Cytat(nospor @ 28.05.2009, 10:14:51 ) *
sorki ze sie czepiam, ale jak sprawdzales czy nie ma bledu zapytania?
Bo jak bys mial blad zapytania, to wtedy faktycznie dostaniesz 0.


Hmm no chyba nie bardzo się rozumiemy. Jeżeli w podzapytaniu nie zastosuję ordera to wynik mam poprawny jeżeli go natomiast dołoże to wtedy mam zero więc zapytanie powinno być ok. Poza tym zerknąłem na wynik tego podzapytania pozostawiając tylko

  1. SET @id=22,@nr=0,@idnr=0;
  2.  
  3. (SELECT @nr:=@nr+1,IF(c.idconfig=@id, @idnr := @nr,@idnr=@idnr),c.idconfig AS ab FROM config AS c INNER JOIN details AS d ON c.idconfig = d.idconfig WHERE c.name='homepage' ORDER BY c.sequence DESC)


i z orderem w kolumnie "if(c.idconfig=@id, @idnr := @nr,@idnr=@idnr)" mam jedynki a przy odpowiendim id mam 0 natomiast bez ordera mam jego pozycję
Go to the top of the page
+Quote Post

Posty w temacie
- jajcarzd1   [MYSQL] Pozycja rekordu w zwracanych wynikach   25.05.2009, 13:33:17
- - pgrzelka   hmm... rekord o id = 50 jest na pozycji 50 ? czy j...   25.05.2009, 14:00:23
|- - jajcarzd1   Cytat(pgrzelka @ 25.05.2009, 15:00:23...   25.05.2009, 14:12:27
- - Spawnm   array_search" title="Zobacz w manualu PHP" target=...   25.05.2009, 14:27:43
- - wookieb   Cytat(Spawnm @ 25.05.2009, 15:27:43 )...   25.05.2009, 14:32:28
- - TheaSiX   możesz to zrobić przy użyciu while ...   25.05.2009, 17:39:18
|- - jajcarzd1   Cytat(TheaSiX @ 25.05.2009, 18:39:18 ...   28.05.2009, 08:39:31
- - nospor   to pokaz to nowe zapytanie co masz   28.05.2009, 08:43:45
- - jajcarzd1   [SQL] pobierz, plaintext SET @id=22,@nr=0,@idnr=0;...   28.05.2009, 08:53:12
- - nospor   a czy nie masz przypadkiem bledu zapytania? Sprawd...   28.05.2009, 09:06:21
|- - jajcarzd1   Cytat(nospor @ 28.05.2009, 10:06:21 )...   28.05.2009, 09:12:37
- - nospor   sorki ze sie czepiam, ale jak sprawdzales czy nie ...   28.05.2009, 09:14:51
|- - jajcarzd1   Cytat(nospor @ 28.05.2009, 10:14:51 )...   28.05.2009, 09:25:26
- - nospor   mozesz zapodac screena z wynikow tego zapytania, o...   28.05.2009, 09:45:17
- - jajcarzd1   Pierwsze [SQL] pobierz, plaintext SET @id=22,@nr=...   28.05.2009, 09:59:23
- - nospor   Kurcze, to jest nie logiczne.... albo mam zacme i ...   28.05.2009, 10:11:04
|- - jajcarzd1   Cytat(nospor @ 28.05.2009, 11:11:04 )...   28.05.2009, 10:41:52
- - nospor   no i juz wiem gdzie jest blad. chodzi o @nr, do kt...   28.05.2009, 10:55:28
- - jajcarzd1   Cytat(nospor @ 28.05.2009, 11:55:28 )...   28.05.2009, 11:00:33


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.12.2025 - 19:38