![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 8.07.2013 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich,
piszę proste api do planera dnia. Czy da się zastąpić 3 SELECTY jednym aby otrzymać następującą odpowiedź:
Bardzo mi zależy na takiej strukturze tabeli. Tak wygląda teraz część mojego kodu w php:
Z góry dzięki za jakąkolwiek pomoc (IMG:style_emoticons/default/tongue.gif) . |
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
UNION
Na dobrą sprawę te 3 zapytania różnią się tylko częścią warunków więc możesz wyodrębnić te różnice w warunkach i wstawić je między OR'y. Będziesz jeszcze musiał się dowiedzieć z której serii warunków otrzymałeś rekord - tutaj skorzystaj z CASE w liście pobieranych kolumn. Czyli: 1. WHERE ... AND ((jakieś warunki) OR (inne warunki) OR (i jeszcze inne)) 2. SELECT ... (CASE WHEN (jakieś warunki) THEN 'timed' WHEN ... END) AS rodzaj |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
@mmmmmmm:
Do tego potrzeba jeszcze tego, co opisałem w punkcie nr 2. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Nie trzeba. Można to na kliencie zrobić.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 8.07.2013 Ostrzeżenie: (0%) ![]() ![]() |
UNION Na dobrą sprawę te 3 zapytania różnią się tylko częścią warunków więc możesz wyodrębnić te różnice w warunkach i wstawić je między OR'y. Będziesz jeszcze musiał się dowiedzieć z której serii warunków otrzymałeś rekord - tutaj skorzystaj z CASE w liście pobieranych kolumn. Czyli: 1. WHERE ... AND ((jakieś warunki) OR (inne warunki) OR (i jeszcze inne)) 2. SELECT ... (CASE WHEN (jakieś warunki) THEN 'timed' WHEN ... END) AS rodzaj Póki co mam takie coś: http://pastebin.com/5rES0JKv Nie usne jak nie będę wiedzieć jak ma wyglądać takie zapytanie. Pomóżcie (IMG:style_emoticons/default/biggrin.gif) -------------------------------------------------- edit Ciągle takie nieeleganckie rozwiązanie... w komentarzu na koncu opisalem problem.
Ten post edytował zielq701 22.05.2015, 21:48:02 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 28.09.2025 - 22:13 |