Обзор Я бежал в вопрос с вопросом доступа я хотел был бы побежать другими специалистами. Я уже имею work-around, поэтому я не заинтересован в я. Я ищу будет объяснением или некоторой проницательностью более лучше для того чтобы понять почему вопрос не работает как предположено.
Вопрос YOURTABLE будет единственной таблицей задействованно. Оно имеет колонку будет главным образом ключом и EmployeeID, whiich удостоверения личности также необходимо. Оно также имеет много опционных колонок, но упростить этот вопрос, котор я исключал все исклучая 3.
Работник может иметь множественные показатели. Каждый показатель может иметь нул-к-все опционных заселенных полей. Заселенные те будут или null или содержат пустой шнур.
Я хочу вопрос возвратить 1 рядок в работник. Когда работник имеет множественные показатели, я хочу одно при самые опционные заселенные поля. Когда будет связь, я хочу одно с самым высоким главным образом ключом.
Мой подход Я использую, котор гнездят вопросы для того чтобы дать. YOURTABLECOUNT возвращает каждый рядок с экстренной колонкой подсчитывает опционные поля. YOURMAXCOUNT возвращает как раз рядки при самые опционные поля заселенные для каждого работника. Оба из тех вопросов работают отлично.
Однако, YOURMAXCOUNT производит множественные рядки для такого же работника. То предположено когда будут связи на самом высоком заселенном отсчете поля. QUERY1 будет попыткой исключить связи путем выбирать самый высокий главным образом ключа от среди связей.
Проблема Я ожидаю QUERY1 для того чтобы возвратить 1 рядок для каждого работника используя сопоставленный sub-query. Но он только возвращает 1 рядок вполне если часть корреляции игнорируется. Вместо возвращающ самый высокий главным образом ключа от СРЕДИ СВЯЗЕЙ для такого же работника, он возвращает только самый высокий главным образом ключа ЧЕРЕЗ ВСЮ ТАБЛИЦУ.
Я получил предпологаемые результаты в QUERY2, просто путем использование по-разному псевдонимов таблицы чем QUERY1. Кажет как то иметь значение, но оно кажется к.
Я также получил предпологаемые результаты в QUERY3 с псевдонимами но использованием первоначально таблицы соединять вместо сопоставленного subquery.
База данных испытания Я осуществляю это будет long-winded вопрос; наиболее наилучшим образом понято путем смотреть приложенную базу данных испытания. BTW, я имею проблему как в .mdb, так и в архиве .accdb using доступ 2007.
Вопросы 1. Почему QUERY1 возвращает 1 рядок вместо 1 рядка в работник? 2. Почему изменять псевдонимы таблицы вносит изменения?
|