- Este tópico contém 2 respostas, 2 vozes e foi atualizado pela última vez 17 anos, 6 meses atrás por Mayhem.
-
AutorPosts
-
14 de julho de 2007 às 2:00 am #80047MayhemParticipante
Boa Noite pessoal,
Estou tentando inserir dados em uma tabela atraves de uma consulta, mas está me gerando um erro aqui “PLS-00103” parece que eu preciso criar uma tabela temporaria??? nao entendi muito bem, alguem pode me ajudar a resolver esse caso valeu!!!!!
[color=red]
(
CODIGO_CLIENTE NVARCHAR2
)
AS
begin
INSERT INTO FICHACLIENTE_ULT_MESES
SELECT
CUSTOMER_ID, VENDOR_ID, product_id, Total_Mes1, Total_Mes2, Total_Mes3, ((Total_Mes1 + Total_Mes2 + Total_Mes3) / 3) as Media
FROM
(SELECT DISTINCT invoice.CUSTOMER_ID, invoice.VENDOR_ID, invoiceItem.product_id,
(SELECT DISTINCT Coalesce(SUM(a.QUANTITY_ITEM), 0) FROM XXP_MEL_INVOICE_ITEM_CONS a WHERE TO_CHAR(a.DATE_FATENT_ITEM,’mm’) = TO_CHAR(ADD_MONTHS(SYSDATE,-1),’mm’) AND TO_CHAR(a.DATE_FATENT_ITEM,’YYYY’) = TO_CHAR(ADD_MONTHS(SYSDATE,-1),’YYYY’) AND a.product_id = invoiceItem.product_id) AS Total_Mes1,
(SELECT DISTINCT Coalesce(SUM(b.QUANTITY_ITEM), 0) FROM XXP_MEL_INVOICE_ITEM_CONS b WHERE TO_CHAR(b.DATE_FATENT_ITEM,’mm’) = TO_CHAR(ADD_MONTHS(SYSDATE,-2),’mm’) AND TO_CHAR(b.DATE_FATENT_ITEM,’YYYY’) = TO_CHAR(ADD_MONTHS(SYSDATE,-2),’YYYY’) AND b.product_id = invoiceItem.product_id) AS Total_Mes2,
(SELECT DISTINCT Coalesce(SUM(c.QUANTITY_ITEM), 0) FROM XXP_MEL_INVOICE_ITEM_CONS c WHERE TO_CHAR(c.DATE_FATENT_ITEM,’mm’) = TO_CHAR(ADD_MONTHS(SYSDATE,-3),’mm’) AND TO_CHAR(C.DATE_FATENT_ITEM,’YYY’) = TO_CHAR(ADD_MONTHS(SYSDATE,-3),’YYYY’) AND c.product_id = invoiceItem.product_id) AS Total_Mes3
FROM XXP_MEL_INVOICE_ITEM_CONS invoiceItem
JOIN XXP_MEL_INVOICE_CONS invoice ON invoice.ORDER_NUMBER = invoice.ORDER_NUMBER
WHERE invoice.VENDOR_ID = CODIGO_CLIENTE
GROUP BY invoiceItem.product_id, invoice.VENDOR_ID, invoice.CUSTOMER_ID);
COMMIT;
end;
[/color]qualquer dúvida é so postar!!
14 de julho de 2007 às 3:51 am #80049DanielBParticipantede que version de pl/sql y base se trata?
podria poner la descripcion de la tabela con sus tipos de datos?
y en el insert tb nombrar los campos?INSERT INTO FICHACLIENTE_ULT_MESES (campo1, campo2, campo3..)
SELECT16 de julho de 2007 às 5:56 pm #80054MayhemParticipante[quote=”DanielB”:zyc1g5bw]de que version de pl/sql y base se trata?
podria poner la descripcion de la tabela con sus tipos de datos?
y en el insert tb nombrar los campos?INSERT INTO FICHACLIENTE_ULT_MESES (campo1, campo2, campo3..)
SELECT[/quote]Obrigado DanielB, o que estava faltando era a descricao dos campos no insert mesmo.
“INSERT INTO FICHACLIENTE_ULT_MESES(CODIGO_CLIENTE, CODIGO_VENDEDOR, CODIGO_PRODUTO, TOTAL_MES1, TOTAL_MES2, TOTAL_MES3, MEDIA)”Agora está funcionando!
Valeu a ajuda!!!
abraço! -
AutorPosts
- Você deve fazer login para responder a este tópico.