Изменения документа Поиск в таблице по списку ключей
Редактировал(а) Alexandr Fokin 2023/12/16 14:13
От версии 6.2
отредактировано Alexandr Fokin
на 2020/03/25 19:03
на 2020/03/25 19:03
Изменить комментарий:
Добавлен комментарий
К версии 1.2
отредактировано Alexandr Fokin
на 2020/03/25 11:41
на 2020/03/25 11:41
Изменить комментарий:
Добавлен тег [sql,Тестирование]
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
-
Объекты (0 изменено, 0 добавлено, 2 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -1,42 +1,0 @@ 1 - 2 -**Задача:** 3 -Имеется таблица с записями Таблица1 (При этом размеры таблицы не малы) 4 -Имеется список ключей List1 (Кол-во элементов в списке превышает 500) 5 - 6 -Необходимо отобрать из Таблица1 значения, у которых поле key попадает в список List1. 7 - 8 -**Варианты реализации:** 9 -1) Использование оператора IN, в параметрах у которого перечислены все значения из List1. 10 -2) Созданием временной таблицы в рамках запроса, наполнение таблицы значениями из List1, выполнить join между временной таблицой и Таблица1 11 -(!При этом одна операция INSERT может вставить не более 1000 строк и если элементов больше, то потребуется несколько операций) 12 - 13 -{{html}} 14 -<table style="height: 179px; width: 620px;"> 15 -<tbody> 16 -<tr> 17 -<td>Кол-во записей с в Таблица1</td> 18 -<td>Кол-во элементов в List1</td> 19 -<td>№</td> 20 -<td>Время выполнения (мс)</td> 21 -</tr> 22 -<tr> 23 -<td>20000</td> 24 -<td>1000</td> 25 -<td>1</td> 26 -<td>3887</td> 27 -</tr> 28 -<tr> 29 -<td> </td> 30 -<td> </td> 31 -<td>2</td> 32 -<td>63</td> 33 -</tr> 34 -</tbody> 35 -</table> 36 -{{/html}} 37 - 38 -Ссылки: 39 -https://metanit.com/sql/sqlserver/10.4.php 40 -https://metanit.com/sql/sqlserver/10.3.php 41 -https://info-comp.ru/programmirovanie/567-table-variables-in-ms-sql-server.html 42 -https://www.cyberforum.ru/ado-net/thread1948686.html
- XWiki.XWikiComments[0]
-
- Автор
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.cccc1808 - Комментарий
-
... ... @@ -1,22 +1,0 @@ 1 -1) 2 -select * 3 -from dbo.MainEntities 4 -where I in (1000,1001,1002 ...) 5 - 6 -2) 7 -DROP TABLE IF EXISTS #TmpData 8 - 9 -CREATE TABLE #TmpData 10 -(ID INT) 11 - 12 - 13 -INSERT INTO #TmpData 14 -VALUES (1000), (1001), (1002), ... 15 - 16 -... 17 - 18 -SELECT * 19 -FROM #TmpData td 20 -JOIN dbo.MainEntities me on td.ID = me.I 21 - 22 -DROP TABLE IF EXISTS #TmpData - Дата
-
... ... @@ -1,1 +1,0 @@ 1 -2020-03-25 11:50:46.920
- XWiki.XWikiComments[1]
-
- Автор
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.cccc1808 - Комментарий
-
... ... @@ -1,2 +1,0 @@ 1 -Рассмотреть вариант: передать xml объект и выполнить join 2 -https://stackoverflow.com/questions/19905092/how-to-join-xml-nodes-to-table-column - Дата
-
... ... @@ -1,1 +1,0 @@ 1 -2020-03-25 19:03:15.802