Используйте подстановочные знаки, которые хранятся в столбцах таблицы в SQL-запросах с MS Access - PullRequest
1 голос
/ 07 июля 2019

Я хочу объединить две таблицы в Access на основе разных подстановочных знаков для разных строк.

Первый, table1, содержит строки с разными подстановочными знаками, а table2 содержит столбец, который должен совпадать с подстановочными знаками в table1.

Я думаю, что код SQL выглядит следующим образом:

SELECT * 
FROM table2 
LEFT JOIN table1 
ON table2.subject LIKE table1.wildcard

Таблицы выглядят так: https://imgur.com/a/O9OPAL6

На третьей картинке показан желаемый результат.

Как выполнить соединение или есть альтернатива?

1 Ответ

2 голосов
/ 07 июля 2019

Я не думаю, что MySQL поддерживает условия неравенства для JOIN с.Итак, вы можете сделать это как:

SELECT *                  -- first get the matches
FROM table2 as t2,        -- ugg, why doesn't it support CROSS JOIN
     table1 as t1
WHERE t2.subject LIKE t1.wildcard
UNION ALL
SELECT *                  -- then get the non-matches
FROM table2 as t2 LEFT JOIN  
     table1 as t1
     ON 1 = 0             -- always false but gets the same columns
WHERE NOT EXISTS (SELECT 1
                  FROM table1 as t1
                  WHERE t2.subject LIKE t1.wildcard
                 );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...