Topic: žklausa

čia dvi užklausos:

$info = mysql_fetch_row(mysql_query("SELECT kazkas FROM lentele WHERE cia = '+'"));
$info2 = mysql_fetch_row(mysql_query("SELECT kazkas FROM lentele WHERE cia = '-'"));

Ar įmanoma tai atlikti su viena užklausa?

Re: žklausa

įmanoma:

SELECT kazkas
FROM lentele
WHERE cia = "+"
  OR cia = "-"

Re: žklausa

Bet reikia, kad ištrauktų reikšmes su + ir -, dabar ištraukia + arba -
Tarkim ištraukia COUNT(kazkas) WHERE + ir COUNT(kazkas) WHERE -

Re: žklausa

Tu pirmam post'e pateikei dvi atskiras sužklausas, kurias vykdant gauni ir tuos ir tuos rezultatus. Tau pateikiau kaip tai atliekama su viena užklausa ;)

Pas tave nebus nei vieno įrašo, kurio stulpelio "cia" reikšmė tuo pačiu metu būtų lygi ir "-" ir "+" ;)

Jeigu pas tave visai kitokia struktūra ir poreikiai tai galėtum apie tai bent minimaliai užsiminti ;)

Re: žklausa

:)
net nežinau kaip normaliai paaiškint..
nu tarkim su tom dviem užklauom galiu atspausdinti tokius duomenis:
echo "$info[0]":
ir
echo "$info2[0]";
$info[0] ir $info2[0] skirtingi duomenys..

Re: žklausa

Na tai mano pateiktame pavyzdyje gausi dvi eilutes, kurias pasiemęs su mysql funkcijom irgi galesi atspausdinti kaip nori.

Re: žklausa

$info = mysql_fetch_row(mysql_query("SELECT kazkas FROM lentele WHERE cia = '+' OR cia = '-'"));

tai kaip aš atspausdinsiu reiksme su + ir su -...:?

Re: žklausa

Tai niekas gi netrukdo pasiimti ir "cia" stulpelį:

SELECT kazkas, cia
FROM lentele
WHERE cia = "+"
  OR cia = "-"

Tikiuosi, kad bent pats supranti ką nori padaryti, nes labai viskas keista ir neaišku čia pas tave.

Re: žklausa

Išsamiai viską paaiškinsiu: :)

Lentelėje 'lentele' saugomos privačios žinutės (PM).

+ - neskaitytos
- - skaitytos

reikia padaryti, kad parodytų kiek yra skaitytų ir kiek neskaitytų. Dariau taip:

$info = mysql_fetch_row(mysql_query("SELECT COUNT(pm) FROM lentele WHERE cia = '+'"));
$info2 = mysql_fetch_row(mysql_query("SELECT COUNT(pm) FROM lentele WHERE cia = '-'"));

echo "Skaitytos: $info[0]";
echo "Neskaitytos: $info2[0]";

Bet norėčiau viską padaryti su viena užklausa...

Re: žklausa

Tai viskas skiriasi nuo to, apie ką kalbėjai anksčiau. Daryti galima kažkaip taip:

SELECT cia, COUNT(*) AS kiek
FROM lentele
GROUP BY cia

Gausi dvi eilutes, su norimais rezultatais ;)

Norint, kad abi sumos būtų vienoje rezltatų eilutėje reikia naudoti sub-select'us.

Re: žklausa

Nu gerai pabandysiu, dėkui :)