Autor | Zpráva | ||
---|---|---|---|
web2000 Profil * |
#1 · Zasláno: 3. 7. 2007, 17:11:50
Ahoj,
Mám takovýto dotaz: SELECT * FROM zaznam WHERE rubrika = $num ORDER BY dealer!=1, id_zaznam DESC"; DESC my teď řadí záznamy od nejnovějšího po nejstarší, ale potřeboval bych tohle klíčové slovo nahradit něčím co by my výsledky řadilo nahodile, ale nesmí to ovlivnit tuto část dealer!=1 Díky moc za pomoc. |
||
Alphard Profil |
#2 · Zasláno: 3. 7. 2007, 17:23:44
order by rand()
|
||
web2000 Profil * |
#3 · Zasláno: 3. 7. 2007, 18:38:11
SELECT * FROM zaznam WHERE rubrika = $num ORDER BY RAND () dealer!=1, id_zaznam DESC";
upravil jsem dotaz ale mysql mi hlásí chybu ? |
||
Dero Profil |
#4 · Zasláno: 3. 7. 2007, 19:32:03
Nejsem odborník v této oblasti, ale řekl bych, že správně je to následovně:
SELECT * FROM zaznam WHERE rubrika = $num ORDER BY RAND(), dealer<>1, id_zaznam DESC |
||
krteczek Profil |
#5 · Zasláno: 3. 7. 2007, 20:11:04 · Upravil/a: krteczek
jestli se nepletu tak klauzule ORDER BY slouží k řazení výpisu takže si myslím že dealer měl být ještě pokračováním klauzule WHERE
$dotaz = "SELECT * FROM `zaznam` WHERE `rubrika` = " . $num . " AND `dealer`<>1 ORDER BY RAND(), `id_zaznam` DESC"; |
||
Kajman_ Profil * |
#6 · Zasláno: 3. 7. 2007, 21:47:59
ORDER BY dealer!=1, rand()
|
||
anode Profil |
#7 · Zasláno: 3. 7. 2007, 23:29:31
V klauzuli WHERE může být libovolný výraz, tedy klidně dealer!=1. Jak říká Kajman_, správně je ORDER BY dealer!=1, RAND()
|
||
web2000 Profil * |
#8 · Zasláno: 4. 7. 2007, 09:59:57
Funkční zápis je tento: navíc DESC jsem dal pryč je to tam teď zbytečné
SELECT * FROM zaznam WHERE rubrika = $num ORDER BY dealer!=1, rand(), id_zaznam Díky všem za rady. |
||
Časová prodleva: 17 let
|
0