У меня есть две таблицыДинамические условия без динамического SQL
KeyWord Table
| KeyWord1 | Operator | KeyWord2 |
| -----------|------------:|:------------:|
| Tom | AND | Harry |
| Krishna | OR | Radha |
| Raju | AND | Radha |
Text Table
| Id | Text |
| -----------|-------------------------------:|
| 1 | Tom and Harry Nice |
| 2 | Tom Harry Raju Radha Nice|
| 3 | Raju Radha Tom Nice |
Ожидаемый результат
Результат
| Id | Text |
| -----------|-------------------------------:|
| 2 | Tom Harry Raju Radha Nice|
В результате из-за (Tom AND Harry) AND (Krishna OR Radha) AND (Raju AND Radha)
. Мне нужно использовать оператор LIKE
(LIKE '%'+tbl.Text+'%'
), чтобы получить логическое выражение.
Если нет динамического подхода sql, дайте мне знать лучший динамический подход sql.
Все преимущества динамического SQL имеют такие динамические условия. Почему вы не хотите использовать динамический SQL? – mattytommo
@mattytommo легко читается и поддерживается. Кроме того, запрос будет намного длиннее, если таблица условий будет большой. вероятность медленного запроса? –
Итак, вы считаете, что хранить операнды и ключевые слова для поиска в таблице легко поддерживать? Я думаю, что он вышел из окна, когда задумал этот стол. – mattytommo