Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][SQL] Jak wydobyć dane?
Forum PHP.pl > Forum > Przedszkole
poczatkujaca12
Mam tabele:
  1. id | nazwa
  2. 1 | jakas
  3. 2 | jakas2
  4. 3 | jaaks3

druga
  1. id | DATA
  2. 1 | 2021-08-26
  3. 1 | 2021-08-27
  4. 3 | 2021-08-26


chcę połączyć zapytaniem:
  1. SELECT DISTINCT(d.id), d.nazwa, p.DATA FROM dic AS d LEFT JOIN proces p ON d.id=p.id WHERE p.DATA = now() OR p.DATA IS NULL

i wyswietla mi:
  1. 1 | jakas | 2021-08-27
  2. 2 | jakas2 | NULL


a chciałabym aby pokazało:
  1. 1 | jakas | 2021-08-27
  2. 2 | jakas2 | NULL
  3. 3 | jakas3 | NULL


tzn chcę, aby zawsze pokazywało wszystkie pozycje z dic i wyświetlało dzisiejszą datę jeśli jest wpisana w tabeli proces, jeśli nie to null, w tej chwil nie chce mi wyświetlić pozycji 3, bo jest wartość z wczoraj...
da się jakoś to zrobić?
trueblue
To nie może być na poziomie klauzuli WHERE, ale na poziomie wybierania kolumn:

  1. SELECT d.id, d.nazwa, MAX(IF(p.DATA<>CURDATE(), NULL, p.DATA)) AS DATA
  2. FROM dic AS d
  3. LEFT JOIN proces p ON d.id=p.id
  4. GROUP BY d.id, d.nazwa
poczatkujaca12
Dzięki, o to chodziło smile.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.