2014-12-17 3 views
1

Я пытаюсь вставить 2 числа count в таблицу как одну запись при доступе через vba, и по какой-то причине он говорит, что количество значений запроса и полей назначения не совпадают, когда я пытаюсь запустить его. Я очень смущен, почему это происходит. Любая помощь будет принята с благодарностьюНесколько операторов выбора в доступе vba

TotalVerified = " INSERT INTO Totals([TOTAL VERIFIED FORMULARIES], [TOTAL AVAILABLE FOR IMPORT]) " & _ 
"SELECT COUNT([FORMULARY ID]) " & _ 
"FROM VerifiedFormularies " & _ 
"AND COUNT([FORMULARY ID])" & _ 
"FROM ImportMetricsIDs" 

ответ

0

Я думаю, что запрос вы хотите:

INSERT INTO Totals([TOTAL VERIFIED FORMULARIES], [TOTAL AVAILABLE FOR IMPORT]) 
    SELECT CNT1, CNT2 
    FROM (SELECT COUNT([FORMULARY ID]) as CNT1 FROM VerifiedFormularies) as c1 CROSS JOIN 
     (SELECT COUNT([FORMULARY ID]) as CNT2 FROMImportMetricsIDs) as c2; 

AND является логическим оператором, который обычно используется в WHERE пункте, ON пунктом а, или в iif() выражении. Он не связывает значения из двух подзапросов.

+0

В нем говорится, что есть 'SYNTAX ERROR' в предложении' FROM'. Я думаю, что это имеет какое-то отношение к 'CROSS JOIN' ... – Pablo

+0

@Pable. , , Вы можете использовать запятую вместо 'CROSS JOIN'. –

Смежные вопросы