Autor Zpráva
Peet
Profil
Dobrý den používám v mé aplikaci SELECT COUNT ale při výpisu hodnoty mi stále vrací pouze nulu

  $result['prijate']=mysql_result(mysql_query("SELECT COUNT(*) FROM messages_with_users WHERE message_id='.$id.'"),0);
  $result['odeslane']=mysql_result(mysql_query("SELECT COUNT(*) FROM messages_with_users_send WHERE message_id='.$id.'"),0);

proměnná id není prázdná tu jsem testoval ale když potom dam echo tak oba dva mi vrací nulu přitom by jeden měl vracet jedničku..

nevím co s tím. ještě jsem přemýšlel že by se tyto dva dotazy dali spojit pomocí UNION ale moc se v tom nevyznám kdyby měl někdo lepší řešení budu rád předem díky
Tori
Profil
Peet:
WHERE message_id=
Nemělo by to být spíš user_id nebo tak něco?
Peet
Profil
nn je to složitější. mám tři tabulky

messages
messages_with_users
messages_with_users_send

a ve dvou pomocných mám pouze id odesílatele id příjemce a id zprávy
a pokud se tyto dotazy budou rovnat oba nule potom se zprava smaze i z tabulky messages..

ale jde o to že ta zpráva je např v tabulce messages_with_users ale dotaz vrátí nulu


VYŘEŠENO

stačilo odstranit tečky u podmínky :)
Tori
Profil
Peet:
pokud se tyto dotazy budou rovnat oba nule potom se zprava smaze i z tabulky messages.
Mohlo by to jít smazat i jedním dotazem:
DELETE FROM m
USING messages m
LEFT JOIN messages_with_users mu ON m.id = mu.message_id
LEFT JOIN messages_with_users_send ms ON m.id = ms.message_id
WHERE m.id = $id AND mu.message_id IS NULL AND ms.message_id IS NULL
Peet
Profil
Tak toto chápu opravdu minimálně :D

Nevím v čem by mi to mohlo pomoct.. je to delší.. ale záleží na tom jestli je to rychlejší než můj přikald...?
Tori
Profil
Peet:
Je to jeden dotaz místo tří, mohlo by to být rychlejší (=můj subjektivní, ničím nepodložený názor).

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0