Oracle
 sql >> база данни >  >> RDS >> Oracle

SQL заявка за получаване на отделни стойности на всички стойности на колони в таблица

Можете да го направите по следния начин:

select col1 from table union
select col2 from table union
. . .
select coln from table;

Използването на union премахва дублиращи се стойности. Имайте предвид, че това предполага, че типовете колони са съвместими (като например всички са низове).

РЕДАКТИРАНЕ:

Ако колоната в таблица трябва да има само един тип. (Добре, може е вариант, но това вероятно не е опростяване.) Можете да прехвърлите всичко към varchar2() :

select cast(col1 as varchar2(255)) from table union
select cast(col2 as varchar2(255)) from table union
. . .
select cast(coln as varchar2(255)) from table;

Като алтернатива можете да групирате колоните по тип данни и да направите отделно изпълнение за всяка от тях или отделна колона за всеки тип данни. Малко вероятно е да имате точни съвпадения между типовете данни, така че това може да задоволи нуждите ви.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. DBMS_PARALLEL_EXECUTE и непряко дадени грантове на процедура

  2. Грешка:Тази функция не е налична за базата данни, която използвате

  3. Възможно ли е да се използва GROUP BY със свързващи променливи?

  4. Не могат да се редактират конфигурационни файлове на OHS в Enterprise Manager

  5. Използвайте gv$session, за да разберете дали дадена заявка виси