Tôi không nghĩ rằng bạn có thể viết một truy vấn SQL thuần túy với các tên bảng động.
Bạn có thể viết một thủ tục PL / SQL sử dụng execute immediate
và trả về một con trỏ hoặc một cái gì đó; ai đó đã hỏi về điều đó mới hôm qua
. Nếu bạn chỉ đang cố gắng viết truy vấn này để tương tác với một số dữ liệu, đó có thể là lựa chọn tốt nhất của bạn.
Ngoài ra, bạn có thể sửa đổi điều đó bằng cách chuyển quy trình PL / SQL của mình thành một hàm pipelined và sau đó bạn có thể gọi nó từ một truy vấn SQL bằng cách sử dụng TABLE()
.
Nếu là tôi, tôi sẽ cân nhắc việc tạo một từ đồng nghĩa (hoặc một chế độ xem tiêu chuẩn chỉ chọn từ các bảng được đặt tên động) và lên lịch công việc để tạo lại nó mỗi khi các bảng mới được tạo. Điều đó có thể đơn giản hơn so với việc xử lý các hàm pipelined.