Я новичок в SQL (Self Taught) и в StackOverflow.Поэтому я прошу прощения, если есть немного новичка.
В настоящее время я пытаюсь написать запрос в метабазе, который позволяет пользователю искать несколько полей в течение определенного периода времени, не будучи на 100% точным к тому, что онипоиск, похожий на поиск по ключевым словам.
Search requests:
Date Time...(Required)
User...(optional)
String A...(optional)
String B...(optional)
String C...(optional)
SELECT
a.DateTime,
a.User,
b.StringA,
b.StringB,
b.StringC
FROM TableA a
JOIN tableB b
ON TableAid = TableBid
WHERE a.datetime between {{start}} and {{end}}
[[AND a.User = {{user}}]]
[[AND b.StringA = {{StringA}}]]
[[AND b.StringB = {{StringB}}]]
[[AND b.StringC = {{StringC}}]];
Синтаксис, приведенный выше, работает правильно, но только если в соответствующие поля введены полные слова.Я пытаюсь использовать оператор Like для извлечения всех строк в столбцах AB и C, которые имеют строку, аналогичную приведенной.
Я пытался использовать
[[AND b.StringA = Like ('%'+{{StringA}}+'%')]]
и
[[AND b.StringA = Like CONCAT('%'+{{StringA}}+'%')]]
безрезультатно и попытался применить несколько решений @StringA в некоторых потоках здесь, но безуспешно.
Кто-нибудь может мне здесь помочь?Любая помощь будет принята с благодарностью.