Подстановочный знак в MS Access Query - PullRequest
0 голосов
/ 25 февраля 2019

У меня есть две таблицы, которые мне нужно запросить для моего отчета.

Первая таблица - Test_Cap_Model_1, вторая - Router.

Я уже добавил две таблицы в свой запрос, и я хочу сделать запрос на основе критериев:

if [Test_Cap_Model1].[Modell] Like [Router].[TestModel]*  

Что означает, что если поле Model1 в таблице Test_Cap_Model_1 содержит значениекоторый начинается с testmodel в таблице Router.Я уже пытался вставить критерии, но он сказал недопустимый оператор.

query

Я написал следующую часть критерия:

[Test_Cap_Model1].[Model] Like [TestModel]% 

Может ли кто-нибудь мне помочь?

Спасибо

Ответы [ 2 ]

0 голосов
/ 25 февраля 2019

Вам нужно будет объединить подстановочный оператор со значением поля (при условии, что поле имеет строковое значение, конечно):

Test_Cap_Model1.Model like Router.[Test Model] & "*"

Использование знака процента (%) в качестве подстановочного операторабудет действительным, только если для базы данных задан синтаксис ANSI-92, который обычно не используется по умолчанию.

Квадратные скобки, окружающие имена полей, требуются только в том случае, если имена полей содержат пробелы или если вы используете зарезервированныйслова без квалификатора таблицы.

Я не уверен, должно ли это поле быть Test Model или TestModel, поскольку это отличается от описания вашего вопроса и вашего скриншота.

Вместо использования крестикаприсоединяясь к своему скриншоту, вы можете альтернативно применить подстановочный знак к критериям объединения, например:

select 
    t.model,
    t.1st_pass,
    t.prime,
    r.route
from
    test_cap_model1 t inner join router r on t.model like r.[test model] & "*"
where
    t.retest = 2 and
    t.test_flow = 'Cummulative Yield'

Хотя обратите внимание, что MS Access не сможет отображать такие объединения в конструкторе запросов, и поэтому вы 'Вам нужно будет сохранить представление SQL, чтобы гарантировать, что объединения не будут уничтожены MS Access.

Обратите внимание на возможную опечатку в вашем screenshot:

'Cummulative Yield'

Возможно, должно быть:

'Cumulative Yield'
0 голосов
/ 25 февраля 2019

Это работает для меня:

[Test_Cap_Model1].[Model] Like [TestModel] & '%'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...