Редактировал(а) Alexandr Fokin 2023/12/16 14:13

От версии 14.3
отредактировано Alexandr Fokin
на 2020/03/28 16:33
Изменить комментарий: Редактировать комментарий
К версии 3.2
отредактировано Alexandr Fokin
на 2020/03/25 11:50
Изменить комментарий: Добавлен комментарий

Сводка

Подробности

Свойства страницы
Содержимое
... ... @@ -8,69 +8,28 @@
8 8  **Варианты реализации:**
9 9  1) Использование оператора IN, в параметрах у которого перечислены все значения из List1.
10 10  2) Созданием временной таблицы в рамках запроса, наполнение таблицы значениями из List1, выполнить join между временной таблицой и Таблица1
11 -(!При этом одна операция INSERT может вставить не более 1000 строк и если элементов больше, то потребуется несколько операций)
12 -Реализация происходит в рамках sql запросов ado.net, без хранимых процедур. Время, затрачиваемое на построение текста запроса, не учитывается.
13 -3) Использование xml переменной, данные из которой используются для операции join с Таблица1.
14 14  
15 15  {{html}}
16 16  <table style="height: 179px; width: 620px;">
17 17  <tbody>
18 - <tr>
19 - <td>Кол-во записей с в Таблица1</td>
20 - <td>Кол-во элементов в List1</td>
21 - <td>Кол-во запусков</td>
22 - <td>№</td>
23 - <td>Среднее время выполнения (мс)</td>
24 - </tr>
25 - <tr>
26 - <td>20000</td>
27 - <td>1000</td>
28 - <td>50</td>
29 - <td>1</td>
30 - <td>97</td>
31 - </tr>
32 - <tr>
33 - <td>&nbsp;</td>
34 - <td>&nbsp;</td>
35 - <td>&nbsp;</td>
36 - <td>2</td>
37 - <td>70</td>
38 - </tr>
39 - <tr>
40 - <td>&nbsp;</td>
41 - <td>&nbsp;</td>
42 - <td>&nbsp;</td>
43 - <td>3</td>
44 - <td>34</td>
45 - </tr>
46 -
47 - <tr>
48 - <td>&nbsp;</td>
49 - <td>2000</td>
50 - <td>50</td>
51 - <td>1</td>
52 - <td>202</td>
53 - </tr>
54 - <tr>
55 - <td>&nbsp;</td>
56 - <td>&nbsp;</td>
57 - <td>&nbsp;</td>
58 - <td>2</td>
59 - <td>126</td>
60 - </tr>
61 - <tr>
62 - <td>&nbsp;</td>
63 - <td>&nbsp;</td>
64 - <td>&nbsp;</td>
65 - <td>3</td>
66 - <td>60</td>
67 - </tr>
15 +<tr>
16 +<td>Кол-во записей с в Таблица1</td>
17 +<td>Кол-во элементов в List1</td>
18 +<td>№</td>
19 +<td>Время выполнения (мс)</td>
20 +</tr>
21 +<tr>
22 +<td>20000</td>
23 +<td>1000</td>
24 +<td>1</td>
25 +<td>3887</td>
26 +</tr>
27 +<tr>
28 +<td>&nbsp;</td>
29 +<td>&nbsp;</td>
30 +<td>2</td>
31 +<td>63</td>
32 +</tr>
68 68  </tbody>
69 69  </table>
70 70  {{/html}}
71 -
72 -Ссылки:
73 -https://metanit.com/sql/sqlserver/10.4.php
74 -https://metanit.com/sql/sqlserver/10.3.php
75 -https://info-comp.ru/programmirovanie/567-table-variables-in-ms-sql-server.html
76 -https://www.cyberforum.ru/ado-net/thread1948686.html
XWiki.XWikiComments[0]
Комментарий
... ... @@ -20,26 +20,3 @@
20 20  JOIN dbo.MainEntities me on td.ID = me.I
21 21  
22 22  DROP TABLE IF EXISTS #TmpData
23 -
24 -3)
25 -
26 -
27 -Declare @idList xml = '<ArrayOfInt>
28 - <int>1000</int>
29 - <int>1001</int>
30 - <int>1002</int>
31 - <int>1003</int>
32 - <int>1004</int>
33 - <int>1005</int>
34 - <int>1006</int>
35 - <int>1007</int>
36 - <int>1008</int>
37 - <int>1009</int>
38 - ...
39 -</ArrayOfInt>'
40 -
41 -Select
42 - me.*
43 -From @idList.nodes('/ArrayOfInt/int') AS idList(id)
44 - JOIN dbo.MainEntities me on idList.id.value('.', 'int') = me.I
45 -