Привет, ребята, я не знаю, имеет ли это смысл, но как я могу запросить другой запрос в VBA?
Я приведу пример ниже
Это мой первый запрос
strSQL1 = "SELECT DISTINCT SourceBank" _
& ", Fullname, FirstNames" _
& ", Surname, Company" _
& ", EmailAddress" _
& " FROM question" _
& " WHERE FirstNames = '" & strFirstNames & "'" _
Set rs = dbs.OpenRecordset(strSQL)
Тогда я хочу сделать что-то подобное. Запросить первый запрос
strSQL2 = "S"SELECT * from " & strSQL1
Set rs1 = dbs.OpenRecordset(strSQL)
Я просто хочу знать, возможно ли это, а если нет, то какой из них лучше всего подходит? Все, что я хочу сделать, - это запросить другой запрос/строку/набор записей.
благодаря
Вы можете сделать это почти так, как вы писали:
strSQL2="SELECT * FROM (" & strSQL1 & ")"
но обязательно не включайте; в strSQL1
upd, попробуйте:
strSQL2 = "SELECT Question.EmailAddress, SUBQUERY.EmailAddress &" _
& "FROM Question LEFT JOIN (" & strSQL1 & ") AS SUBQUERY ON Question.EmailAddress = SUBQUERY.EmailAddress"
ИЛИ просто сохранить sql1 в QueryDef (Query in ms access) и использовать его как исходную таблицу.