Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Błędne zapytanie
Forum PHP.pl > Forum > Bazy danych > MySQL
Adam51015
Witam. Mam tabelę o nazwie pracownicy zawierającą kolumny Nr.prac, Imię , Nazwisko, Pensja. Napisałem zapytania wyświetlające wszystkie osoby, mające takie same pensje:

  1. SELECT a.nazwisko, a.Pensja
  2. FROM pracownicy AS a
  3. WHERE EXISTS ( SELECT b.nazwisko
  4. FROM pracownicy AS b
  5. WHERE a.`Nr_Prac`<>b.`Nr_Prac` AND
  6. b.pensja=a.pensja )
  7. ORDER BY `Pensja`


  1. SELECT nazwisko, Pensja
  2. FROM pracownicy
  3. WHERE EXISTS ( SELECT b.nazwisko
  4. FROM pracownicy AS b
  5. WHERE `Nr_Prac`<>b.`Nr_Prac` AND
  6. b.pensja=pensja )
  7. ORDER BY `Pensja`


Nie rozumiem, dlaczego drugie zapytanie jest niepoprawne. Czy mógłby mi to ktoś wytłumaczyć?
koodo218
W drugim zapisie odwołując się do Nr_prac bez aliasu bierze ci go z zapytania w jakim jest wykonywane (czyli podzapytania).
Adam51015
Niestety, nadal nie rozumiem. W drugim zapytaniu podzapytanie nic nie zwraca bo jest jakiś problem z Nr_prac?
trueblue
Część:
  1. `Nr_Prac`<>b.`Nr_Prac`
jest równoznaczna z:
  1. b.`Nr_Prac`<>b.`Nr_Prac`
Adam51015
Dzięki, już rozumiem.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.