Hãy bảng này WORDSOracle SQL - tìm các giá trị trong một bảng KHÔNG
WORD
Hello
Aardvark
Potato
Dog
Cat
Và danh sách này:
('Hello', 'Goodbye', 'Greetings', 'Dog')
Làm thế nào để trả về một danh sách các từ mà không phải là trong từ bảng, nhưng trong danh sách của tôi?
Nếu tôi có một bảng mà "chứa tất cả các từ có thể", tôi có thể làm:
SELECT * from ALL_WORDS_TABLE
where word in ('Hello', 'Goodbye', 'Greetings', 'Dog')
and word not in
(SELECT word from WORDS
where word in ('Hello', 'Goodbye', 'Greetings', 'Dog')
);
Tuy nhiên tôi không có một bảng như vậy. Làm thế nào khác có thể được thực hiện?
Ngoài ra, việc xây dựng một bảng mới không phải là một tùy chọn vì tôi không có cấp truy cập đó.
Kỹ thuật tốt) Nhưng điều gì sẽ xảy ra nếu quyền truy cập vào sys. * bị từ chối? – denied
@denied Vâng đó sẽ là vụng về thực sự. Có thể có các cách khác để chuyển đổi danh sách chuỗi được phân tách thành cột thanh lịch hơn sys.dbms_debug_vc2coll. Có lẽ có một giải pháp sử dụng SQL thuần túy? – Wolf
@Denied Trong ngữ cảnh này, 'sys' không phải là một điều xấu. Ai đó về mặt lý thuyết có thể từ chối bạn truy cập vào loại đó, nhưng có lẽ đó không phải là điều bạn cần phải lo lắng. Đó là về khả năng là ai đó loại bỏ quyền truy cập vào 'sys.dbms_output'. –