Bạn có thể làm như thế này:
select col1 from table union
select col2 from table union
. . .
select coln from table;
Việc sử dụng union
loại bỏ các giá trị trùng lặp. Lưu ý rằng điều này giả định rằng các loại cột tương thích (chẳng hạn như tất cả đều là chuỗi).
CHỈNH SỬA:
Nếu cột trong bảng chỉ có một loại. (Được rồi, nó có thể là một biến thể, nhưng đó có lẽ không phải là sự đơn giản hóa.) Bạn có thể truyền mọi thứ sang 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;
Ngoài ra, bạn có thể nhóm các cột theo kiểu dữ liệu và thực hiện chạy riêng cho từng cột hoặc một cột riêng biệt cho từng kiểu dữ liệu. Không chắc rằng bạn sẽ có kết quả khớp chính xác giữa các loại dữ liệu, vì vậy điều này có thể đáp ứng nhu cầu của bạn.