Kod
---------------------------------------------------------
id | user_id | p1 | p2 | p2 | p2 | p2 | aż do p150
----|------------|-------|-------|-------|-------|-------|
1 | 1 | 1 | 0 | 1 | 1 | 0 |...
2 | 2 | 1 | 1 | 1 | 1 | 0 |...
3 | 3 | 1 | 0 | 1 | 1 | 1 |...
---------------------------------------------------------
id | user_id | p1 | p2 | p2 | p2 | p2 | aż do p150
----|------------|-------|-------|-------|-------|-------|
1 | 1 | 1 | 0 | 1 | 1 | 0 |...
2 | 2 | 1 | 1 | 1 | 1 | 0 |...
3 | 3 | 1 | 0 | 1 | 1 | 1 |...
---------------------------------------------------------
Chciałabym by zapytanie zsumowało mi od p1 do p150 każdy rekord odpowiedniego usera.
Próbowałam z SUM ale coś mi nie wychodzi. Funkcja COUNT daje mi wynik 1 mimo iż jedynek jest więcej.
Co próbowałam robić:
Kod
$q = doquery("SELECT COUNT(*) AS cos FROM tabela WHERE `id_user` = '".$user['id']."';","tabela");
$a = mysql_fetch_array($q);
echo $a['cos'];
$a = mysql_fetch_array($q);
echo $a['cos'];
Kod
$q = doquery("SELECT SUM(*) AS cos FROM tabela WHERE `id_user` = '".$user['id']."';","tabela");
$a = mysql_fetch_array($q);
echo $a['cos'];
$a = mysql_fetch_array($q);
echo $a['cos'];
Kod
$q = doquery("SELECT SUM(p1, p2,......,p150) AS cos FROM tabela WHERE `id_user` = '".$user['id']."';","tabela");
$a = mysql_fetch_array($q);
echo $a['cos'];
$a = mysql_fetch_array($q);
echo $a['cos'];
Kiedy używam COUNT wynikiem jest 1
Jeśli użyje SUM wywala mi błąd:
Kod
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 '*) AS cos FROM tabela WHERE `id_user` = '1'' at line 1
SELECT SUM(*) AS cos FROM tabela WHERE `id_user` = '1';
SELECT SUM(*) AS cos FROM tabela WHERE `id_user` = '1';
Nie chcę pisać czegoś w rodzaju:
Kod
$q = doquery("SELECT * FROM tabela WHERE `id_user` = '".$user['id']."';","tabela");
$sumka = $q['p1'] +$q['p2'] +$q['p3'] +$q['p4'] +.....+$q['p150'];
$sumka = $q['p1'] +$q['p2'] +$q['p3'] +$q['p4'] +.....+$q['p150'];
Proszę o pomoc