SQL grupowe filtrowanie danych

SQL grupowe filtrowanie danych
K1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
0

Cześć,

Chce wyfiltrować tylko te ID_PIECE jesli STAT !=11
Jeślli w danym ID_PIECE występuje STAT = 11 to chce całkowicie pominać to ID_PIECE
jak to zgrupować w warunku. Próbowałem już na rózne sposoby.
Oczekiwany resultat to:
56105
56106

screenshot-20240819110207.png

woolfik
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1611
1
Kopiuj
select distinct ID_PIECE from ... where STAT <> 11
K1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
0
woolfik napisał(a):
Kopiuj
select distinct ID_PIECE from ... where STAT <> 11

W tym wypadku dostajesz wynik z wszystkimi ID_PIECE z wyjątkiem rekordu z STAT = 11

Ja chce osiągnąć coś takiego:
56104 0
56104 1
56104 11
To w tym przypadku ID_56104 nie powinno być wgle wyświetlone

a dostałem wynik:
56104 0
56104 1

woolfik
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1611
1

to możesz pokombinować z having lub and not exists (select 1 from ... where ID_PIECE = x.ID_PIECE and STAT = 11)

wemibo
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: okolice Warszawy
  • Postów: 128
3
Kopiuj
select * from tabela where ID_PIECE not in (select ID_PIECE from tabela STAT = 11)
K1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
0

Dzięki za pomoc.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.