Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] Zapytanie (2 kolumny)
kusiu
post 15.03.2007, 14:49:24
Post #1





Grupa: Zarejestrowani
Postów: 163
Pomógł: 10
Dołączył: 24.01.2006

Ostrzeżenie: (30%)
XX---


Witam,
Chcę zrobić zapytanie tego typu:

  1. SELECT id_menu FROM tabela1


  1. SELECT * FROM tabela2 WHERE id_menu='23' AND id_menu={wyniki z pierwszego zapytania} ORDER BY RAND() LIMIT 1


Jak to zrobić?

Pozdrawiam:)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
nospor
post 15.03.2007, 14:54:18
Post #2





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




  1. SELECT * FROM tabela2 WHERE id_menu='23' AND id_menu IN (SELECT id_menu FROM tabela1 ) ORDER BY RAND() LIMIT 1


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

"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
kusiu
post 15.03.2007, 15:57:24
Post #3





Grupa: Zarejestrowani
Postów: 163
Pomógł: 10
Dołączył: 24.01.2006

Ostrzeżenie: (30%)
XX---


w porządeczku:)
Natomiast chciałbym jeszcze pobrać id z pola gdzie dane są oddzielone od siebie znakiem "|".
Przypuścmy w polu id_menu jest 3|5|7

  1. SELECT * FROM tabela1 WHERE id_menu='".$_GET['d']."


Probowalem cos z regexp i rlike... dobry trop?

Pozdrawiam
Go to the top of the page
+Quote Post
chlebik
post 15.03.2007, 21:22:10
Post #4





Grupa: Zarejestrowani
Postów: 113
Pomógł: 5
Dołączył: 12.09.2006
Skąd: Pruszków/Warszawa

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


Cytat(kusiu @ 15.03.2007, 15:57:24 ) *
Probowalem cos z regexp i rlike... dobry trop?

Pozdrawiam



Dobry. Manual MySQL mowi, ze jako parametr tej funkcji mozna przekazac w zasadzie wszystko, lacznie z wyrazeniami regularnymi chocby. Jednakze nalezy brac pod uwage wydajnosc - uzywanie wyrazen regularnych kiedy mozna zalatwic to sztywna wartoscia jest niefektywne (tzn. zre zasoby) zatem nalezy uzywac tego z rozmyslem. Szczegoly samych funkcji i skladnie znajdziesz w manualu.


--------------------
"Człowiek dążący do swego celu może być skuteczny tylko w przypadku, jeśli każdą minutę swego życia wykorzysta z maksymalną korzyścią dla osiągnięcia zaplanowanego celu. Jeśli stworzył dla siebie system kar i karze sam siebie za każdą zmarnowaną minutę. Człowiekowi w zupełności wystarczą 3-4 godziny snu, cały pozostały czas może być wykorzystany dla osiągnięcia upragnionego celu." -- Wiktor Suworow
Java devBlog
KulturalnyChlebik
Go to the top of the page
+Quote Post
kusiu
post 16.03.2007, 08:24:17
Post #5





Grupa: Zarejestrowani
Postów: 163
Pomógł: 10
Dołączył: 24.01.2006

Ostrzeżenie: (30%)
XX---


no tak..jednak dalej mam problem... miałby ktoś jakis pomysł questionmark.gif

mam coś takiego:

  1. SELECT * FROM tabela1 WHERE active='1' AND id_menu RLIKE '[0-9]' AND id_menu='4'


Ten post edytował kusiu 16.03.2007, 08:44:37
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 - 03:52