|
12 Кб. |
|
| Существует база данных: db6.mdb
содержащая 2 таблицы:tbl_1, tbl_2
с полями: Поле1, Поле2 (тип: длинное целое)
и 2 запроса:
sql_1: Итог: Sum([tbl_1].[Поле1]*[tbl_1].[Поле2 ])
sql_2: Итог: Sum([tbl_2].[Поле1]*[tbl_2].[Поле2 ])
как присвоить переменной в модуле 1 результат выполнения данных запросов:
per_a=?????
per_b=????? | |
|
| |
|
|
|
|
With CurrentProject.Connection
per_a = .Execute("sql_1")(0)
per_b = .Execute("sql_2")(0)
End With
|
per_a = DSum("[Поле1]*[Поле2]", "tbl_1")
per_b = DSum("[Поле1]*[Поле2]", "tbl_2")
|
| |
|
| |
|
|
|
| вопрос Lukas
я правильно понимаю что первый вариант быстрее? | |
|
| |
|
|
|
|
| Померил:
Родная табличка tbl1:
ID_____Long, Counter, PK
fldCur__Currency
fldLong_Long
200 000 записей
10 вычислений, в миллисекундах:
1 Time Execute= 312 Time Dsum= 313
2 Time Execute= 266 Time Dsum= 297
3 Time Execute= 312 Time Dsum= 313
4 Time Execute= 312 Time Dsum= 328
5 Time Execute= 313 Time Dsum= 312
6 Time Execute= 329 Time Dsum= 296
7 Time Execute= 313 Time Dsum= 312
8 Time Execute= 328 Time Dsum= 313
9 Time Execute= 312 Time Dsum= 313
10 Time Execute= 312 Time Dsum= 328
|
| |
|
| |
|
|
|
| Спасибо за подробный ответ | |
|
| |