Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: SELECT + UNION + ORDER = nie działa
Forum PHP.pl > Forum > Bazy danych > MySQL
gothye
witam

typ pytaniem pobieram z tabeli event (wydarzenia) 4 rózne typy ich

  1. SELECT * FROM events WHERE type=1 AND STATUS = 1 LIMIT 4
  2. UNION SELECT * FROM events WHERE type=2 AND STATUS = 1 LIMIT 4
  3. UNION SELECT * FROM events WHERE type=3 AND STATUS = 1 LIMIT 4
  4. UNION SELECT * FROM events WHERE type=4 AND STATUS = 1 LIMIT 4



do tego pytania załozyłem kolumne add (int)10 gdzie zapisuje czas w postaci timestamp i chce pobierać dla każdego typu 4 ostatnie wydarzenia ,ale pokazuje mi bład sad.gif

Mchl
Forum jasnowidzów jest gdzie indziej. Tutaj musisz napisać jaki to błąd.
gothye
może inaczej teraz spytam:

jak pobrać 4 ostatnie rekordy z tej samej tabeli dla 4 różnych wartości z kolumny `type` ?

Mchl
Trzymając się tego jak zacząłeś:
Kod
(SELECT * FROM events WHERE type=1 AND status = 1 ORDER BY timestampColumn DESC LIMIT 4)
UNION
(SELECT * FROM events WHERE type=2 AND status = 1 ORDER BY timestampColumn DESC LIMIT 4)
UNION
(SELECT * FROM events WHERE type=3 AND status = 1 ORDER BY timestampColumn DESC LIMIT 4)
UNION
(SELECT * FROM events WHERE type=4 AND status = 1 ORDER BY timestampColumn DESC LIMIT 4)


P.S. Do przechowywania czasu mamy typy DATETIME i TIMESTAMP. INT jest do tego celu passe tongue.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.