2011-10-20 16 views
17

próbuję ten kod:Ilość SQL - nie działa

SELECT COUNT (oferta_id_oferta) 
FROM `oferta_has_tags` 
WHERE oferta_id_oferta = 
(SELECT id_oferta FROM oferta 
WHERE oferta = "designer") 

otrzymam error: 1630 - FUNCTION mydb.COUNT does not exist. Check the 'Function Name Parsing and Resolution' section in the Reference Manual

Jeśli usunąć słowo COUNT, mam dwa wyniki.

Na czym polega problem?

Odpowiedz

49

Nie wkładać przestrzeń

SELECT COUNT(oferta_id_oferta) 
FROM `oferta_has_tags` 
WHERE oferta_id_oferta = 
(SELECT id_oferta FROM oferta 
WHERE oferta = "designer") 
+4

Boże, przestrzeń. dzięki :) – user947462

+0

nie ma za co: D – msarchet

+0

Idealne rozwiązanie :-) – Henry8

6

Spróbuj usunąć przestrzeń pomiędzy policzyć i nawiasów:

SELECT COUNT(oferta_id_oferta) 
FROM `oferta_has_tags` 
WHERE oferta_id_oferta = 
(SELECT id_oferta FROM oferta 
WHERE oferta = "designer") 

Również prawdopodobnie można pozbyć się podzapytaniu przyłączając:

SELECT COUNT(oferta_id_oferta) 
FROM `oferta_has_tags`, `oferta` 
WHERE 
    oferta_has_tags.oferta_id_oferta = oferta.id_oferta 
    AND oferta.oferta = "designer"