【发布时间】:2022-01-17 18:04:05
【问题描述】:
我有一个表格,每行一个单词,还有一个表格,其中一行有一些文本。我需要 从第二个表中只选择那些不包含第一个表中的单词的行。
例如:
带有约束词的表格
| constraint_word |
|---|
| example |
| apple |
| orange |
| mushroom |
| car |
| qwerty |
带文字的表格
| text |
|---|
| word1. apple; word3, example |
| word1, apple, word2. car |
| word1 word2 orange word3 |
| mushroomword1 word2 word3 |
| word1 car |
| qwerty |
在这种情况下不应选择任何内容,因为第二个表中的每一行都包含第一个表中的单词。
我只有一个想法,使用CROSS JOIN 来实现这一目标
SELECT DISTINCT text FROM text_table CROSS JOIN words_table
WHERE CONTAINS(text, constraint_word ) = 0
有没有办法不使用CROSS JOIN?
【问题讨论】:
-
您使用的是哪个 dbms?
-
@jarlh 我使用 Oracle