Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: porównywanie dwóch kolumn w jednej tabeli
Forum PHP.pl > Forum > Bazy danych > MySQL
japolak
Witam
mam problem z określeniem tego czego chce:) Wiec pokaże co mam i co chciałbym uzyskać:

Powiedzmy ze mam taką tabelę:

id/id_parent
1/0
2/0
3/0
4/2
5/0
6/0
7/5


a oczekiwany wynik byłby:
id / id_parent
1/0
3/0
4/2
6/0
7/5

czyli z wyłączeniem tych id =0 dla których mamy zdefiniowany id dla którego id_parent = temu id

trueblue
  1. SELECT t1.id,t1.id_parent
  2. FROM tabela AS t1
  3. WHERE t1.id NOT IN (SELECT t2.id_parent FROM tabela AS t2)


  1. SELECT t1.id,t1.id_parent
  2. FROM tabela AS t1
  3. LEFT JOIN tabela AS t2 ON t2.id_parent=t1.id
  4. WHERE t2.id IS NULL

japolak
Cytat(trueblue @ 11.09.2016, 11:51:14 ) *
  1. SELECT t1.id,t1.id_parent
  2. FROM tabela AS t1
  3. WHERE t1.id NOT IN (SELECT t2.id_parent FROM tabela AS t2)


  1. SELECT t1.id,t1.id_parent
  2. FROM tabela AS t1
  3. LEFT JOIN tabela AS t2 ON t2.id_parent=t1.id
  4. WHERE t2.id IS NULL



dzięki wielkie - działają dwie opcje;)


@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@



podniosłem sobie poprzeczkę i dodałem jeszcze dwie kolumny z datą i statusem cykl


zadanie moje jest takie
dane wejściowe :

id/id_parent/data/cykl
1/0/2016-09-22/Y
2/0/2016-09-22/Y
3/0/2016-09-22/Y
4/2/2016-09-22/N
5/0/2016-09-22/Y
6/2/2016-09-23/N
7/5/2016-09-23/N


a oczekiwany wynik dla dnia 2016-09-22 byłby:
id/id_parent/data/cykl
1/0/2016-09-22/Y
3/0/2016-09-22/Y
4/2/2016-09-22/N
5/0/2016-09-22/Y


czyli bez:
2/0/2016-09-22/Y
6/2/2016-09-23/N
7/5/2016-09-23/N


dla dnia 2016-09-23
id/id_parent/data/cykl
1/0/2016-09-22/Y
3/0/2016-09-22/Y
6/2/2016-09-23/N
7/5/2016-09-23/N

czyli bez:
2/0/2016-09-22/Y
4/2/2016-09-22/N
5/0/2016-09-22/Y


a dla dnia 2016-09-24
id/id_parent/data/cykl
1/0/2016-09-22/Y
2/0/2016-09-22/Y
3/0/2016-09-22/Y
5/0/2016-09-22/Y

czyli bez:
4/2/2016-09-22/N
6/2/2016-09-23/N
7/5/2016-09-23/N

Jak to rozgryźć questionmark.gif:
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.