Autor | Zpráva | ||
---|---|---|---|
kvoky Profil |
#1 · Zasláno: 5. 6. 2008, 18:10:59
Zdravím,
SELECT proxy, used as (SELECT count(*) FROM proxy_used2 WHERE list_id=a.id AND (time<'$day_today' OR time='') GROUP BY list_id) FROM proxy_list2 a WHERE error IS NULL AND used IS NULL kde je chyba? hlasi to: 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 '(SELECT count(*) FROM proxy_used2 WHERE list_id=5 AND (time<'1212616800' OR time' at line 2 |
||
nightfish Profil |
#2 · Zasláno: 5. 6. 2008, 18:15:36
nemělo by to být spíš takhle?
SELECT proxy, (SELECT count(*) ....) as used FROM proxy_list2 a WHERE ... |
||
kvoky Profil |
#3 · Zasláno: 5. 6. 2008, 18:22:19 · Upravil/a: kvoky
To už jsem zkoušel ale vrací to tohle:
Unknown column 'used' in 'where clause'. Možná by to šlo jinak přes JOIN... jenže má to vzít i ty záznamy kde není žádný ekvivalent (time) v druhé tabulce a pokud dám time IS NULL nebo time='' nic to nevrací. |
||
lordfrikk Profil |
#4 · Zasláno: 5. 6. 2008, 19:11:08
"as used" by mělo být určitě až za příslušným blokem. Co se týče té chybové hlášky "Unknown column 'used' in 'where clause'.", ta snad mluví sama za sebe, ne? Tohle lze najíst v MySQL manuálu:
Standard SQL doesn't allow you to refer to a column alias in a WHERE clause. Proto se používá pro podmínky s aliasy klauzule HAVING namísto WHERE. |
||
Časová prodleva: 16 let
|
0