Ir para conteúdo
douglas.ribeiro.id

Gerar script para inserir dados

Recommended Posts

Bom dia a todos

 

a varios anos que nao tenho que criar um script no oracle nao consigo lembrar ne como começar e tambem estou sem o oracle instalado na maquina

alguem poderia me ajudar? o problema e este: 

Crie um segundo script (SCRIPT2.SQL) que possua um bloco de código para que gere registros fictícios para as tabelas criadas. Gere 1000 registros para a tabela EXAME_NF. Para cada EXAME_NF gere 3 registros. Faça com que a DATACADASTRO do EXAME_NF comece em 10 dias atrás, fazendo com que a cada 100 registros a data seja aumentada em 1 dia, distribuindo assim os 1000 registros em 10 dias diferentes de cadastro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por pamf
      Prezados, boa noite!
       
      Me deparei com um problema aqui que acredito que seja bem simples para voces. Estou aqui precisando agrupar dados com a maior data de vendas para um cliente Numa coluna para todas as linhas do cliente (registro a registro das notas). Tambem preciso fazer algumas operacoes de total para disponibilizar um SCRIPT SQL sql para ser consumido por uma ferramenta analitica de BI e foi especificado exatamente como esta na planilha. Para facilitar criei os cenários. Tem os scripts de criacao da tabela e de insert e os resultados esperados nas colunas calculadas pelo sql. Espero que a documentação esteja boa para o caso de uso e que voces possam me ajudar. POde ser didatico para quem da aulas de PL SQL.
       
      Grato
       
      Att
      Paulo
       
      PS: como nao aceitou a planilha, escrevo abaixo:
       
      --SCRIPT DE CRIACAO TABELA ORACLE CREATE TABLE T_VENDAS (DATA_VENDA DATE, COD_CLI NUMBER (10), CLIENTE VARCHAR2(10), NUM_NF VARCHAR(10), ITEM VARCHAR2(20), QTDE NUMBER (10,2), VL_TOT_ITEM NUMBER (10,2), VL_UNIT NUMBER (10,2)); --INSERTS INSERT INTO T_VENDAS VALUES('05-Jan-2019',15,'JOAO','20','MESA',1,200,200); INSERT INTO T_VENDAS VALUES('05-Jan-2019',15,'JOAO','20','CADEIRA',4,240,60); INSERT INTO T_VENDAS VALUES('21-Jan-2019',15,'JOAO','66','BANCO',2,240,120); INSERT INTO T_VENDAS VALUES('08-Feb-2019',15,'JOAO','102','GELADEIRA',1,600,600); INSERT INTO T_VENDAS VALUES('07-Mar-2019',15,'JOAO','145','ARMARIO',1,450,450); INSERT INTO T_VENDAS VALUES('05-Jan-2019',20,'MARIA','28','SOFA',1,750,750); INSERT INTO T_VENDAS VALUES('05-Jan-2019',20,'MARIA','28','TAPETE',2,280,140); INSERT INTO T_VENDAS VALUES('21-Jan-2019',20,'MARIA','72','CORTINA',2,160,80); INSERT INTO T_VENDAS VALUES('08-Feb-2019',20,'MARIA','120','CAMA',1,400,400); INSERT INTO T_VENDAS VALUES('17-Feb-2019',20,'MARIA','151','COLCHAO',1,500,500);  
       
      CENARIOS (DADOS INSERIDOS NA TABELA T_VENDAS - COLUNAS DO EXCEL ABAIXO: B, C, D, E, F, G, H, I)
       

       
      COLUNAS CALCULADAS ESPERADAS NO SCRIPT SQL ALEM DAS COLUNAS JA EXISTENTES NA TABELA
       

       
      RESULTADO ESPERADO DO SCRIPT SQL
       

       
       
       
         
    • Por EREGON
      Bom dia,
       
      tenho uma tabela cuja estrutura está toda em VARCHAR. Essa tabela contem algumas colunas com valores decimais, e quero executar algumas queries para fazer algumas operações aritméticas, como:
       
      -Devolver valores maiores que xx.xx, etc.
       
      Mas estou a ter erros, como:
       
      ORA-12801: erro assinalado no servidor de consulta paralela P009, instance ptlhb100.pt.sedc.internal.vodafone.com:CSTMRDM2 (2)
      ORA-01722: número inválido
      12801. 00000 -  "error signaled in parallel query server %s"
      *Cause:    A parallel query server reached an exception condition.
      *Action:   Check the following error message for the cause, and consult
                 your error manual for the appropriate action.
      *Comment:  This error can be turned off with event 10397, in which
                 case the server's actual error is signaled instead.
       
      Estou a executar a querie:
       
      SELECT TBL_NUMBER
      FROM MOBILE_UPSELL tl
      WHERE TO_NUMBER(tl.ARPU_MIB) < 8.01
       
      Já tentei TO_BINARY_NUMBER e dá o mesmo erro.
       
      O que está mal aqui?
       
      Obrigado
       
      Paulo
       
       
    • Por luizfabianochaves
      bom dia..
       
      preciso fazer o calculo do prazo medio de recebimento da minha empresa, em relação ao periodo do ano passado.
      já tenho a soma de tudo o que recebi com 30, 60, 90, 120 e mais de 120 dias.. como calcular o prazo medio do pl sql com essas informações?
    • Por asacap1000
      Salve Galera, estou quase finalizando um relatório porém travei em um campo.
      Este relatório consiste em subtrair hora de entrada e saída, trazer em dias horas e minutos de um período.
      Depois preciso calcular a média destes resultados.
      eu barrei na parte de dias não vem a informação correta.
       
      Segue select se alguem puder me dar uma força.
       
      SELECT io.id_in_out, IOP.DOCUMENT,IO.TIME_IN entrada, IO.TIME_RELEASE_PP saida, LPAD(TRUNC(((IO.TIME_RELEASE_PP - IO.TIME_IN) /24 )), 2, '0') || ':' || LPAD(TRUNC(((IO.TIME_RELEASE_PP - IO.TIME_IN) * 24 )), 2, '0') || ':' || LPAD(TRUNC(MOD((IO.TIME_RELEASE_PP - IO.TIME_IN) * 86400, 3600) / 60), 2, '0') || ':' || LPAD(TRUNC(MOD(MOD((IO.TIME_RELEASE_PP - IO.TIME_IN) * 86400, 3600), 60)), 2, '0') TEMPO FROM DESMEMBR DD, IN_OUT_POS IOP, IN_OUT IO, SPEDITEURE S, VEHICLE V, DRIVER D WHERE DD.TYP_PROCESS = 'DINACI' AND 'DI' = IOP.TYP_DOCUMENT AND DD.NR_DI = IOP.DOCUMENT AND IOP.ID_IN_OUT = IO.ID_IN_OUT AND IO.ART_IN_OUT IN ('CA', 'CC', 'CCE') AND IO.STAT <> '80' AND S.ID_SPEDITEUR = IO.ID_SPEDITEUR AND V.ID_VEHICLE = IO.ID_VEHICLE AND IO.TIME_IN >= TO_DATE('01/12/2018', 'dd/mm/yyyy') AND IO.TIME_IN <= TO_DATE('31/12/2018', 'dd/mm/yyyy') AND D.ID_DRIVER = IO.ID_DRIVER O resultado acima está vindo assim:
       
      1    378470    1211942181    14/12/2017 09:35:41    14/12/2017 13:32:31    00:03:56:50
      2    378470    1211942181    14/12/2017 09:35:41    14/12/2017 13:32:31    00:03:56:50
       
      Depois de acertar isso preciso realizar a média que a principio eu utilizaria o AVG mas dá erro.
       
      Agradeço quem puder me ajudar.
    • Por asacap1000
      Galera salve salve a todos,
       
      Estou com um problema em um select  e preciso da ajuda de vocês.
       
      O select se refere a calculo de faturamentos os quais calculam os itens cobrados na NF.
      Eu preciso gerar um relatório destes lançamentos e com isso criei o select  abaixo.
      select bo.lager, bo.id_os, k.id_klient, k.suchbegriff cnpj_cpf, k.name, bi.div_1 lote, bi.div_10 di_dde, (select distinct dis.id_dispatcher from fiscal.dochd dc, wms_eadi.dispatcher dis where dc.dochd_doc_id = bo.nr_nf and dc.dochd_rps_desp = dis.suchbegriff) cod_comissaria, (select distinct dis.bez from fiscal.dochd dc, wms_eadi.dispatcher dis where dc.dochd_doc_id = bo.nr_nf and dc.dochd_rps_desp = dis.suchbegriff) comissaria, bo.nr_nf, bo.date_bill, bo.date_emiss, (select sum(round(osi.preis, 2)) from bill_os_item osi where osi.lager = bo.lager and osi.id_klient = k.id_klient and osi.id_os = bo.id_os and osi.billite = bi.billite and osi.div_1 = bi.div_1 and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x') and osi.billite in (select bll.billite from bill_item bll, werte wer where bll.tipo_fat = wer.wert and wer.werte_ber = 'ITENSF' and wer.wert = 'ARMAZ')) vlr_armaz, (select sum(round(osi.preis, 2)) from bill_os_item osi where osi.lager = bo.lager and osi.id_klient = k.id_klient and osi.id_os = bo.id_os and osi.billite = bi.billite and osi.div_1 = bi.div_1 and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x') and osi.billite in (select bll.billite from bill_item bll, werte wer where bll.tipo_fat = wer.wert and wer.werte_ber = 'ITENSF' and wer.wert = 'GER.RISCO')) vlr_ger_risco, (select sum(round(osi.preis, 2)) from bill_os_item osi where osi.lager = bo.lager and osi.id_klient = k.id_klient and osi.id_os = bo.id_os and osi.billite = bi.billite and osi.div_1 = bi.div_1 and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x') and osi.billite in (select bll.billite from bill_item bll, werte wer where bll.tipo_fat = wer.wert and wer.werte_ber = 'ITENSF' and wer.wert = 'MOVIMENT')) vlr_movimentacao, (select sum(round(osi.preis, 2)) from bill_os_item osi where osi.lager = bo.lager and osi.id_klient = k.id_klient and osi.id_os = bo.id_os and osi.billite = bi.billite and osi.div_1 = bi.div_1 and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x') and osi.billite in (select bll.billite from bill_item bll, werte wer where bll.tipo_fat = wer.wert and wer.werte_ber = 'ITENSF' and wer.wert = 'DESUNIT')) vlr_desunit, (select sum(round(osi.preis, 2)) from bill_os_item osi where osi.lager = bo.lager and osi.id_klient = k.id_klient and osi.id_os = bo.id_os and osi.billite = bi.billite and osi.div_1 = bi.div_1 and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x') and osi.billite in (select bll.billite from bill_item bll, werte wer where bll.tipo_fat = wer.wert and wer.werte_ber = 'ITENSF' and wer.wert = 'PESAGEM')) vlr_pesagem, (select sum(round(osi.preis, 2)) from bill_os_item osi where osi.lager = bo.lager and osi.id_klient = k.id_klient and osi.id_os = bo.id_os and osi.billite = bi.billite and osi.div_1 = bi.div_1 and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x') and osi.billite in (select bll.billite from bill_item bll, werte wer where bll.tipo_fat = wer.wert and wer.werte_ber = 'ITENSF' and wer.wert = 'AVERBAÇÃO')) vlr_averbacao, (select sum(round(osi.preis, 2)) from bill_os_item osi where osi.lager = bo.lager and osi.id_klient = k.id_klient and osi.id_os = bo.id_os and osi.billite = bi.billite and osi.billite in (select bll.billite from bill_item bll, werte wer where bll.tipo_fat = wer.wert and wer.werte_ber = 'ITENSF' and wer.wert = 'FAT.MINIMO.')) vlr_fat_minimo, (select sum(round(osi.preis, 2)) from bill_os_item osi where osi.lager = bo.lager and osi.id_klient = k.id_klient and osi.id_os = bo.id_os and osi.billite = bi.billite and osi.div_1 = bi.div_1 and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x') and osi.billite in (select bll.billite from bill_item bll, werte wer where bll.tipo_fat = wer.wert and wer.werte_ber = 'ITENSF' and bll.billite not in ('21.02', '21.03') and wer.wert = 'OUT.SERV.')) vlr_outros_serv, (select sum(round(osi.preis, 2)) from bill_os_item osi where osi.lager = bo.lager and osi.id_klient = k.id_klient and osi.id_os = bo.id_os and osi.billite = bi.billite and osi.div_1 = bi.div_1 and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x') and osi.billite in (select bll.billite from bill_item bll, werte wer where bll.tipo_fat = wer.wert and wer.werte_ber = 'ITENSF' and bll.billite = '21.02' and wer.wert = 'OUT.SERV.')) transf_in, (select sum(round(osi.preis, 2)) from bill_os_item osi where osi.lager = bo.lager and osi.id_klient = k.id_klient and osi.id_os = bo.id_os and osi.billite = bi.billite and osi.div_1 = bi.div_1 and nvl(osi.div_10, 'x') = nvl(bi.div_10, 'x') and osi.billite in (select bll.billite from bill_item bll, werte wer where bll.tipo_fat = wer.wert and wer.werte_ber = 'ITENSF' and bll.billite = '21.03' and wer.wert = 'OUT.SERV.')) transf_out from bill_os bo, bill_os_item bi, klienten k where bo.lager = bi.lager and bo.id_klient = bi.id_klient and bo.id_os = bi.id_os and bo.lager = k.lager and bo.id_klient = k.id_klient and bo.status = '90' and k.id_klient = '2464' --and trunc(bo.date_bill) between '$inicio' and '$fim' group by bo.lager, bo.id_os, k.id_klient, k.suchbegriff, k.name, bo.date_emiss, bo.nr_nf, bo.date_bill, bi.billite, bi.div_1, bi.div_10 Ele me traz os resultados por linhas de cada tipo de cobrança.
      Segue imagem do resultado.

       
      Eu preciso que os resultados viessem em apenas uma linha, estou quebrando a cabeça com isso.
      o resultado tem que ser assim:
       

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.