Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pobranie jednej wartości wiadomej i dwóch losowych
tomekmvr
post
Post #1





Grupa: Zarejestrowani
Postów: 116
Pomógł: 2
Dołączył: 11.09.2006

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


Witam

Mam tabele

id | nazwa
------------
1 jeden
2 dwa
3 trzy
4 cztery
5 piec

Chcę pobrać wartość pierwszą równą id = 3 a dwie pozostałe losowe.

Próbowałem przez takie zapytanie

  1. SELECT * FROM `tabela` ORDER BY id = 3, rand() LIMIT 3


ale nie otrzymuje tego co chcę, id=3 w ogóle nie jest brane pod uwagę w tym zapytaniu i nie wiem dlaczego.
Proszę o jakieś wskazówki


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
kitol
post
Post #2





Grupa: Zarejestrowani
Postów: 162
Pomógł: 26
Dołączył: 19.01.2007

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


  1. SELECT * FROM `tabela`WHERE id =3
  2. UNION ALL
  3. SELECT * FROM `tabela`WHERE id !=3 ORDER BY rand() LIMIT 2
Go to the top of the page
+Quote Post
tomekmvr
post
Post #3





Grupa: Zarejestrowani
Postów: 116
Pomógł: 2
Dołączył: 11.09.2006

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


Nie pomyślałem o UNION ALL

Jeszcze trzeba nawiasy dołożyć i działa jak chcę.

  1.  
  2. (SELECT * FROM `tabela`WHERE id =3)
  3. UNION ALL
  4. (SELECT * FROM `tabela`WHERE id !=3 ORDER BY rand() LIMIT 2)


--------------------
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 Aktualny czas: 22.08.2025 - 07:32