Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

cesarhtc

Select

Recommended Posts

Boa noite,

Tenho uma tabela contém os seguintes dados:

 

nome dos campos: chave, sequencia e texto.

 

dados:

 

Chave sequencia texto

123 1 casa

123 2 teto

123 3 mesa

 

Tenho que listar da seguinte forma:

 

Chave texto

123 casa teto mesa

 

Desde já agradeço ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa noite,

Tenho uma tabela contém os seguintes dados:

 

nome dos campos: chave, sequencia e texto.

 

dados:

 

Chave sequencia texto

123 1 casa

123 2 teto

123 3 mesa

 

Tenho que listar da seguinte forma:

 

Chave texto

123 casa teto mesa

 

Desde já agradeço ajuda.

 

 

Boa noite amigo!

 

Select chave, sequecia, texto(nome campos)

from tabela (nome da tabela)

order by chave; ( ordenar pela coluna)

 

Boa noite amigo!

 

Select chave, sequecia, texto(nome campos)

from tabela (nome da tabela)

order by chave; ( ordenar pela coluna)

Compartilhar este post


Link para o post
Compartilhar em outros sites

O resultado foi este.

 

127211,001, CASA

127211,003, ESCOLA

127211,002, LIVRO

 

 

O que eu preciso é assim:

 

127211 CASA ESCOLA LIVRO

Compartilhar este post


Link para o post
Compartilhar em outros sites

Usa uma função.. segue um exemplo...

 

 

primeiro:

 

CREATE OR REPLACE TYPE LINHA_TYPE AS OBJECT
( F_EMPNO NUMBER,
 F_ENAME VARCHAR2(10),
 F_JOB VARCHAR2(9),
 F_MGR NUMBER,
 F_HIREDATE VARCHAR2(15),
 F_SAL VARCHAR2(10),
 F_COMM VARCHAR(10),
 F_DEPTNO NUMBER)

 

 

segundo:

 

CREATE OR REPLACE TYPE LINHA_TABLE AS TABLE OF LINHA_TYPE

 

------------------------------------------------------------

 

ai vem a função:

 

CREATE OR REPLACE FUNCTION LINHA_INTEIRA
                               RETURN LINHA_TABLE PIPELINED AS
               V_RETOR LINHA_TYPE := LINHA_TYPE(100,'ANDERSON','ANALISTA',85,'02/07/2012','3500,00',NULL,40);
               V_RETOR1 LINHA_TYPE := LINHA_TYPE(101,'CASIO','DBA',45,'05/02/2004','5000,00',250,20);
               V_RETOR2 LINHA_TYPE := LINHA_TYPE(102,'VANDER','DBM',23,'15/10/2007','2800,00',100,10);
               V_RETOR3 LINHA_TYPE := LINHA_TYPE(103,'AUGUSTO','STAG',86,'30/11/2002','1500,00',150,50);
               V_RETOR4 LINHA_TYPE := LINHA_TYPE(104,'PEDRO','GERENTE',32,'01/02/2000','7500,00',NULL,30);
BEGIN
 PIPE ROW(V_RETOR);
  PIPE ROW(V_RETOR1);
   PIPE ROW(V_RETOR2);
    PIPE ROW(V_RETOR3);
     PIPE ROW(V_RETOR4);
RETURN;
END;

------------------------------

NA HORA DE PUXAR FICARIA ASSIM :

SELECT LINHA_INTEIRA FROM DUAL;

VAI RETORNAR EXATAMENTE COMO ESTÁ NA " V_RETOR " E ASSIM POR DIANTE SE QUISER MAIS LINHAS...

 

att

Compartilhar este post


Link para o post
Compartilhar em outros sites

ou ...

 

CREATE OR REPLACE FUNCTION texto( paramp IN number)
RETURN VARCHAR2 IS
--
-- Retorna uma string 
Cursor c1 is Select texto
From tabela
where chave= paramp;
Saida VARCHAR2(200);
BEGIN
Saida:= ' ';
FOR r1 In c1 LOOP
Saida := saida || trim(r1.texto) || ' ';
END LOOP;
RETURN TRIM(Saida);
END;

 

select chave,texto(chave) texto
from tabela

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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