Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Zapytanie w zapytaniu MSQL
Leilang
post 14.07.2018, 21:25:24
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 11.07.2018

Ostrzeżenie: (0%)
-----


Hej mam problem z zagnieżdżeniem pytań do bazy.

Aktualnie mam dwa osobne pytania, pierwszy wyszukuje konkretnego słowa w bazie:

  1.  
  2. $sql = "SELECT * FROM zlecenia WHERE material LIKE '%$selected_val%' or idzlecenia LIKE '%$selected_val%' or
  3. numerZlecenia LIKE '%$selected_val%' or data LIKE '%$selected_val%' or bokOut LIKE '%$selected_val%' or
  4. graficznyIn LIKE '%$selected_val%' or graficznyOut LIKE '%$selected_val%' or drukowalIn LIKE '%$selected_val%' or
  5. drukowalOut LIKE '%$selected_val%' or dtp LIKE '%$selected_val%' or halaIn LIKE '%$selected_val%' or
  6. halaOut LIKE '%$selected_val%' or zakłada LIKE '%$selected_val%'";
  7.  


Drugi szuka po konkretnym zakresie dat:

  1. $sql = "SELECT * FROM zlecenia WHERE data >= '".$selectedIN."' OR data <= '".$selectedOUT."' OR
  2. bokOut >= '".$selectedIN."' OR bokOut <= '".$selectedOUT."' OR
  3. graficznyIn >= '".$selectedIN."' OR graficznyIn <= '".$selectedOUT."' OR
  4. graficznyOut >= '".$selectedIN."' OR graficznyOut <= '".$selectedOUT."' OR
  5. drukarniaIn >= '".$selectedIN."' OR drukarniaIn <= '".$selectedOUT."' OR
  6. drukarniaOut >= '".$selectedIN."' OR drukarniaOut <= '".$selectedOUT."' OR
  7. halaIn >= '".$selectedIN."' OR halaIn <= '".$selectedOUT."' OR
  8. halaOut >= '".$selectedIN."' OR halaOut <= '".$selectedOUT."' ";



Osobno wszystko działa ale chciałbym je połączyć tak aby najpierw wyszukał mi wszystko po dacie (zapytanie nr 2) i z tego co zwróci wyszukał po zapytaniu nr 1.
Czytałem o zagnieżdżaniu jednego zapytania w drugim ale nie umiem sobie poradzić żeby to poprawnie zapisać..
Go to the top of the page
+Quote Post
trueblue
post 14.07.2018, 21:29:46
Post #2





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


A czytałeś o operatorze AND?
SELECT .... WHERE warunki1 AND warunki2
Kolejność warunków nie ma znaczenia.


--------------------
Go to the top of the page
+Quote Post
b4rt3kk
post 14.07.2018, 21:41:33
Post #3





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Ujmujesz w nawias wszystkie OR z zapytania nr 2, dodajesz AND, ujmujesz w nawias wszystkie OR z zapytania nr 1.

  1. SELECT * FROM TABLE WHERE (c1 = '1' OR c1 = '2') AND (c3 = '3' OR c4 = '4');


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
Go to the top of the page
+Quote Post
Leilang
post 14.07.2018, 22:13:24
Post #4





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 11.07.2018

Ostrzeżenie: (0%)
-----


Cytat(b4rt3kk @ 14.07.2018, 22:41:33 ) *
Ujmujesz w nawias wszystkie OR z zapytania nr 2, dodajesz AND, ujmujesz w nawias wszystkie OR z zapytania nr 1.

  1. SELECT * FROM TABLE WHERE (c1 = '1' OR c1 = '2') AND (c3 = '3' OR c4 = '4');



Właśnie tych nawiasów mi brakowało, dziękuje !
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.04.2024 - 18:59