Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]MYSQL
-mysqlmen-
post 6.02.2012, 12:01:51
Post #1





Goście







Hej. Chcę pobrać z bazy zapytanie, a warunkiem ma być 7 dat które podam. Nie dam and, bo jeśli jakieś nie będzie to nic nie wyświetl, a także nie dam OR bo jak znajdzie jakąś to resztę ominie. Dzięki.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
Kshyhoo
post 6.02.2012, 12:04:48
Post #2





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Pokaż, co do tej pory zrobiłeś.


--------------------
Go to the top of the page
+Quote Post
-mysqlmen-
post 6.02.2012, 12:08:44
Post #3





Goście







Co mam pokazać? Mam tablice 7 elemtnową z 7 datami i chce pobrać każdy rekord w którym dane pole równa się jednemu z tych w tablicy. snitch.gif
Go to the top of the page
+Quote Post
Kshyhoo
post 6.02.2012, 12:11:43
Post #4





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Pokaż strukturę tabel i zapytanie, które już zrobiłeś (z którym masz problemy). Na tym forum pomagamy a nie robimy za kogoś (chyba, że w dziale "giełda" za $).

Ten post edytował Kshyhoo 6.02.2012, 12:26:18


--------------------
Go to the top of the page
+Quote Post
-mysqlmen-
post 6.02.2012, 12:25:57
Post #5





Goście







Ty mnie chyba nie rozumiesz. snitch.gif

Pytam się tylko jak dać parę warunków!
WYŚWIETL TYLKO TE REKORDY W KTÓRYCH KOMÓRKA DATA RÓWNA SIĘ: data[1], data[2], data[3], data[4], data[5], data[6], data[7]

SELECT * form komorka WHERE data=? snitch.gif
Go to the top of the page
+Quote Post
nospor
post 6.02.2012, 12:44:54
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
a także nie dam OR bo jak znajdzie jakąś to resztę ominie.
a niby od kiedy coś omija dla OR? Jak znajdzie rekord dla pierwszego or, to juz dla tego rekordu dalej nie sprawdza - logiczne. Ale inne rekordy jak najbardziej będzie sprawdzał
Powód edycji: [nospor]:


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
-mysqlmen-
post 6.02.2012, 13:05:23
Post #7





Goście







data[1] OR data[2] OR data[3] OR data[4].

To jak znajdzie data[1], to reszte oleje. A ja chcę zrobić tak żeby wyszukało wszystkie rekordy w którym jest data[1], data[2],data[3],data[4].
Go to the top of the page
+Quote Post
--mysql--
post 6.02.2012, 13:07:52
Post #8





Goście







Z tym że może np nie znaleźć data[3], a jak nie znajdzie żadnego rekordu z taką datą, to reszty też nie wyświetli mimo że będą jeśli dam and.
Go to the top of the page
+Quote Post
d3ut3r
post 6.02.2012, 13:13:25
Post #9





Grupa: Zarejestrowani
Postów: 709
Pomógł: 176
Dołączył: 24.10.2010

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


przeczytaj raz jeszcze o warunkach logicznych z naciskiem na warunek OR w wolnym tłumaczeniu zapytanie ma wyglądać tak:

wyświetl wszystkie rekordy gdzie data to data[1] lub data[2] lub itd.

i teraz jeżeli znajdzie którąkolwiek z tych dat to wyświetli ją na liście wyników.

Czyli bierze pierwszy rekord sprawdza warunek 1 jeżeli jest prawdziwy to zwraca wynik i idzie do następnego rekordu sprawdzać, jeżeli nie jest prawdziwy to sprawdza drugi warunek itd. jeżeli którykolwiek warunek będzie prawdziwy to taki rekord będzie spełniał kryteria i znajdzie się na liście wyników, jeżeli żaden warunek nie będzie prawdziwy to rekordu w wynikach nie będzie.

W mysql mamy jeszcze IN gdzie możesz podać zbiór konkretnych elementów które mają pasować.


--------------------
http://d3ut3r.wordpress.com/ | mysql_* jest przestarzałe UŻYWAJ PDO!
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: 14.08.2025 - 12:17