Access 2000, mdb
Есть запрос, который выводит все записи из таблицы tbo_pokazatel для ПоляСоСписком:
Me.ПоляСоСписком.RowSource = "SELECT tbo_pokazatel.id_pokaz, tbo_sprav_pokazateli.name AS [Наименование показателя], " & _
"tbo_pokazatel.type AS Тип, tbo_sprav_metod.abbr AS Метод, tbo_sprav_ntd.ntd AS НТД " & _
"FROM ((tbo_pokazatel LEFT JOIN tbo_sprav_pokazateli ON tbo_pokazatel.name = tbo_sprav_pokazateli.id_pokaz) " & _
"LEFT JOIN tbo_sprav_ntd ON tbo_pokazatel.ntd = tbo_sprav_ntd.id_ntd) " & _
"LEFT JOIN tbo_sprav_metod ON tbo_pokazatel.metod = tbo_sprav_metod.id_metod " & _
"ORDER BY tbo_sprav_pokazateli.name"
|
Как сделать так, чтобы выводились только те записи, поле tbo_sprav_pokazateli.name которых еще не фигурировало (отсутствует для данного значения tbo_raschety.id_proba.
Делал так:
Me.ПоляСоСписком.RowSource = "SELECT tbo_pokazatel.id_pokaz, tbo_sprav_pokazateli.name AS [Наименование показателя], " & _
"tbo_pokazatel.type AS Тип, tbo_sprav_metod.abbr AS Метод, tbo_sprav_ntd.ntd AS НТД " & _
"FROM ((tbo_pokazatel LEFT JOIN tbo_sprav_pokazateli " & _
"ON tbo_pokazatel.name = tbo_sprav_pokazateli.id_pokaz) " & _
"LEFT JOIN tbo_sprav_ntd ON tbo_pokazatel.ntd = tbo_sprav_ntd.id_ntd) " & _
"LEFT JOIN tbo_sprav_metod ON tbo_pokazatel.metod = tbo_sprav_metod.id_metod " & _
"WHERE (tbo_sprav_pokazateli.name NOT IN (" & _
"SELECT DISTINCT tbo_sprav_pokazateli.name " & _
"FROM tbo_sprav_pokazateli INNER JOIN (tbo_pokazatel INNER JOIN tbo_raschety " & _
"ON (tbo_pokazatel.id_pokaz = tbo_raschety.id_pokazatel) AND (" & _
"tbo_pokazatel.id_pokaz = tbo_raschety.id_pokazatel)) ON (tbo_sprav_pokazateli.id_pokaz = tbo_pokazatel.name) AND (" & _
"tbo_sprav_pokazateli.id_pokaz = tbo_pokazatel.name) " & _
"WHERE tbo_raschety.id_proba = " & Me.id_proba & "))) " & _
"ORDER BY tbo_sprav_pokazateli.name"
|
ой мудрено получилось, вряд ли кто то что то поймет.
Короче, смысл такой. Главный Запрос должен вывести несколько полей, среди которых поле NAME, причем это поле NAME должно отсутствовать в результатах вложенного запроса...
Делал уже и NOT LIKE, и NOT EXISTS и чего только не делал...
Кто что понял, подскажите плиз...