База данных MS Access 2010, следующее созданы таблицы:MS Access многозначного поля запрос
BazaNalaza колонна:
- ID - AutoNumber
- ReportID - номер
- ResponsibleUnit - число, многозначное поле, связанным с листом ResponsibleUnits
ОтветственныйУниверситет:
- ID - AutoNumber
- Имя - текст
- CompanyLine - текст
ResponsibleUnits содержит следующие данные:
ID + Name + CompanyLine
++++++++++++++++++++++++++++++
1 + ItOps + Technology
2 + IdDev + Technology
3 + CRM + Marketing
4 + Legal + ExCo
5 + ItDWH + Technology
После SQL запрос работает нормально:
SELECT * FROM BazaNalaza
WHERE BazaNalaza.ResponsibleUnit.Value IN (1,2,5)
Однако следующий код не работает:
SELECT * FROM BazaNalaza
WHERE BazaNalaza.ResponsibleUnit.Value IN (SELECT ID FROM ResponsibleUnits WHERE CompanyLine = "Technology")
Второй запрос работает только для строк, где значения в пределах bazaNalaza.ResponsibleUnit начинается с 1, 2 или 5, в то время как поля, которые содержат, например, (3,5) или (4,5) или (3,4,5) не находятся в наборе результатов.
Любые идеи, что не так?
Я бы порекомендовал просто не использовать многозначные поля, они по-прежнему не работают. –