Cita:
Iniciado por dajaher 2) select sum s.precio, h.usuario;
from historico h
join servicios s on (s.precio = h.usuario)
where h.fecha between todate ('11/05/2009', 'DD/MM/RRRR') AND todate ('21/05/2009', 'DD/MM/RRRR')
Mira, para empezar, SUM es una
función de agregación, por lo que es
obligatorio usar GROUP BY cuando la usas, sobre todos los campos no afectados por funciones agregadas.
Además, en Oracle (asumo que es ese DBMS el que usas), la función de confersión entre cadena de texto y fecha
no es TODATE(), sino TO_DATE(). No es lo mismo.
Son errores demasiado básicos, tan básicos que es manifiesto que no verificaste ni siquiera un manual de Oracle on line, ¿no es así?
Bueno, eso es lo
primero que se debe hacer ante cualquier duda. Inclusive los que nos dedicamos profesionalmente a BBDD los tenemos a mano, por la simple razón de que uno no usa todo todo el tiempo, y tampoco se pone a memorizar TODO.
En BBDD lo primero es entender la lógica de su funcionamiento. La sintaxis es cuestion de documentación...
Por otro lado te comento que se requieren tres consultas como mínimo para resolver los tres temas que te dieron en el ejercicio.
Ten en cuenta que en FDW no tenemos por hábito hacer trabajos prácticos a nadie. Sólo guiamos para obtener las soluciones, pero el ejercicio lo tienes que hacer tu.