Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL] Zapytanie (2 kolumny)
kusiu
post
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
nospor
post
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
Go to the top of the page
+Quote Post
kusiu
post
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
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.
Go to the top of the page
+Quote Post
kusiu
post
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ł (IMG:http://forum.php.pl/style_emoticons/default/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
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.09.2025 - 10:43