Hola
No se que bd usas pero casi todas aceptan
DISTINCT.
Si no colocas esto sumara todos los datos del campo cantidad.
Por otro lado no entiendo el uso de:
No deberia ser ?:
Ya que el query esta conectado a la bd y tabla no creo que sea necesario esto.
Entonces:
Si quieres DISTINGUIR entre un tipo de dato se usa lo que dije, asi se tendra que definir si es por nombre y otro dato.
Saludos