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

От версии 1.1
отредактировано Alexandr Fokin
на 2020/03/23 11:22
Изменить комментарий: К данной версии нет комментариев
К версии 3.2
отредактировано Alexandr Fokin
на 2020/03/25 11:50
Изменить комментарий: Добавлен комментарий

Сводка

Подробности

Свойства страницы
Название
... ... @@ -1,1 +1,1 @@
1 -Поиск в таблице по списку
1 +Поиск в таблице по списку ключей
Теги
... ... @@ -1,0 +1,1 @@
1 +sql|Тестирование
Содержимое
... ... @@ -1,0 +1,35 @@
1 +
2 +**Задача:**
3 +Имеется таблица с записями Таблица1 (При этом размеры таблицы не малы)
4 +Имеется список ключей List1 (Кол-во элементов в списке превышает 500)
5 +
6 +Необходимо отобрать из Таблица1 значения, у которых поле key попадает в список List1.
7 +
8 +**Варианты реализации:**
9 +1) Использование оператора IN, в параметрах у которого перечислены все значения из List1.
10 +2) Созданием временной таблицы в рамках запроса, наполнение таблицы значениями из List1, выполнить join между временной таблицой и Таблица1
11 +
12 +{{html}}
13 +<table style="height: 179px; width: 620px;">
14 +<tbody>
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>
33 +</tbody>
34 +</table>
35 +{{/html}}
XWiki.XWikiComments[0]
Автор
... ... @@ -1,0 +1,1 @@
1 +XWiki.cccc1808
Комментарий
... ... @@ -1,0 +1,22 @@
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,0 +1,1 @@
1 +2020-03-25 11:50:46.920