SQL dotaz

Programovacie jazyky, rady, poradňa...
Juri1990
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 365
Registrovaný: 25 jan 2006, 10:05
Bydlisko: Bratislava
Kontaktovať používateľa:

SQL dotaz

Príspevok od používateľa Juri1990 »

Zdravím, mám zase problém so znalostiam.
Mám sql dotaz na tri tabulky - users(meno, uid,...), forum_temy(tam mám id kategórie, id témy a názov témy) a forum_temy$cislo(kde mám id témy, uid, datetime, text).
Chcem podľa zvolenej kategórie vypísať zoznam tém z jednej kategórie a ku každej téme pripísať čas a meno autora posledného príspevku a zároveň to chcem témy zoradiť podľa času posledného príspevku.
Nevidíte tam chybu, poprípade nepoznáte nejaké lepšie riešenie?

Kód: Vybrať všetko

$vypis = mysqli_query($db_spojenie,
  "SELECT users.uid, users.meno, forum_temy.*, '$forum'.*
  FROM users, forum_temy, '$forum' ORDER BY '$forum'.dt DESC 
  WHERE forum_temy.kid='$kid', forum_temy.tid='$forum'.tid, users.uid='$forum'.uid");
  over_dotaz($vypis, $db_spojenie);

Kód: Vybrať všetko

function over_dotaz( $dotaz, $db_spojenie){
    if (!$dotaz){die('Chyba dotazu SQL: ' .mysqli_error($db_spojenie));}}
//vypisije my:
Chyba dotazu SQL: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.* FROM users, forum_temy, 'forum_k2' ORDER BY 'forum_k2'.dt DESC WHERE f' at line 1
Mmartin
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2786
Registrovaný: 07 feb 2009, 12:49
Bydlisko: Bratislava

Re: SQL dotaz

Príspevok od používateľa Mmartin »

Nie som si isty, ale myslim, ze ORDER BY DESC patri na koniec dotazu
Juri1990
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 365
Registrovaný: 25 jan 2006, 10:05
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: SQL dotaz

Príspevok od používateľa Juri1990 »

Je to možno, no problém pretrváva naďalej.
beluský
Darca
Darca
Používateľov profilový obrázok
Príspevky: 317
Registrovaný: 21 sep 2006, 13:46

Re: SQL dotaz

Príspevok od používateľa beluský »

Kód: Vybrať všetko

$vypis = mysqli_query($db_spojenie,
  "SELECT users.uid, users.meno, forum_temy.*, $forum.*
  FROM users, forum_temy, $forum  
  WHERE forum_temy.kid='$kid', forum_temy.tid='$forum'.tid, users.uid='$forum'.uid ORDER BY $forum.dt DESC");
  over_dotaz($vypis, $db_spojenie);
pouzivaj join
Juri1990
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 365
Registrovaný: 25 jan 2006, 10:05
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: SQL dotaz

Príspevok od používateľa Juri1990 »

Ešte stále to nejde...čo si myslel tým join?
beluský
Darca
Darca
Používateľov profilový obrázok
Príspevky: 317
Registrovaný: 21 sep 2006, 13:46

Re: SQL dotaz

Príspevok od používateľa beluský »

Kód: Vybrať všetko

$vypis = mysqli_query($db_spojenie,
  "SELECT users.uid, users.meno, forum_temy.*, $forum.*
  FROM users, forum_temy, $forum 
  WHERE forum_temy.kid='$kid', forum_temy.tid=$forum.tid, users.uid=$forum.uid ORDER BY $forum.dt DESC");
  over_dotaz($vypis, $db_spojenie);
co keby si skusil tie uvodzovky odstranit aj sam, to je take tazke?
Juri1990
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 365
Registrovaný: 25 jan 2006, 10:05
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: SQL dotaz

Príspevok od používateľa Juri1990 »

Ja som ich odstránil(ako si písal), ale stále mi vypisuje chybu.

Kód: Vybrať všetko

"SELECT users.uid, users.meno, forum_temy.*, $forum.* FROM users, forum_temy, $forum 
  WHERE forum_temy.kid='$kid', forum_temy.tid=$forum.tid, users.uid=$forum.uid
  ORDER BY $forum.dt DESC");

Chyba dotazu SQL: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' forum_temy.tid=forum_k2.tid, users.uid=forum_k2.uid ORDER BY forum_k2.dt DES' at line 2
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: SQL dotaz

Príspevok od používateľa audiotrack »

medzi pravidlá vo where klauzule musíš dávať or alebo and a nie oddeliť ich čiarkami
Juri1990
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 365
Registrovaný: 25 jan 2006, 10:05
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: SQL dotaz

Príspevok od používateľa Juri1990 »

Jáj jasné, fakt dík, na to som úplne zabudol, no už to ide.
Napísať odpoveď