Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Запрос на выборку из одной таблицы по критерию из другой / 11 сообщений из 11, страница 1 из 1
11.12.2018, 15:53
    #39746127
jan120117
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на выборку из одной таблицы по критерию из другой
Имеются 2 таблицы, одна представлена в виде справочника с неповторяющимися уникальными значениями, ТАБЛИЦА1 структура: ID, name

вторая таблица (ТАБЛИЦА2) по структуре представляет из себя: ID, ID_name, ID_control, name, control, при этом в этой таблице значения в колонке name могут повторятся, как мне заполнить колонку ID_name значениями ID из ТАБЛИЦА1 по соответствию
...
Рейтинг: 0 / 0
11.12.2018, 16:05
    #39746137
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на выборку из одной таблицы по критерию из другой
jan120117,

по соответствию чего с чем?
...
Рейтинг: 0 / 0
11.12.2018, 16:23
    #39746159
jan120117
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на выборку из одной таблицы по критерию из другой
Владислав Колосов,

к примеру

Таблица1
ID, name
1 Mike
2 Spike
3 Like
4 Nike
5 Flake
...

Таблица 2
ID, ID_name, ID_control, name, control
1 NULL NULL Mike Office
2 NULL NULL Mike House
3 NULL NULL Spike Shop
4 NULL NULL Flake Office
5 NULL NULL Spike Shop
.....


Задача в том чтобы в Таблице2 после отработки запроса заполнилась колонка ID_name соответствующими значениями из колонки ID Таблицы1 :

Таблица 2
ID, ID_name, ID_control, name, control
1 1 NULL Mike Office
2 1 NULL Mike House
3 2 NULL Spike Shop
4 5 NULL Flake Office
5 2 NULL Spike Shop
...
Рейтинг: 0 / 0
11.12.2018, 16:26
    #39746164
londinium
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на выборку из одной таблицы по критерию из другой
jan120117,
попробуйте что-то в духе
Код: sql
1.
2.
3.
4.
5.
UPDATE T SET
 T.ID_name=X.ID
FROM [ТАБЛИЦА2]T
JOIN [ТАБЛИЦА1]X
ON T.[NAME]=X.[NAME]
...
Рейтинг: 0 / 0
11.12.2018, 16:32
    #39746169
jan120117
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на выборку из одной таблицы по критерию из другой
londinium,

проблема в том, что значения name из таблицы 2 могут повторятся, и соответственно у первого из повтора ID_name - будет, у последующих - нет, будет значение NULL
...
Рейтинг: 0 / 0
11.12.2018, 16:35
    #39746172
Shakill
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на выборку из одной таблицы по критерию из другой
jan120117londinium,

проблема в том, что значения name из таблицы 2 могут повторятся, и соответственно у первого из повтора ID_name - будет, у последующих - нет, будет значение NULL
а вы пробовали?
...
Рейтинг: 0 / 0
11.12.2018, 16:47
    #39746183
jan120117
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на выборку из одной таблицы по критерию из другой
Shakill,

да
...
Рейтинг: 0 / 0
11.12.2018, 16:50
    #39746185
iap
iap
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на выборку из одной таблицы по критерию из другой
Проблема может быть в другом.
Если name вводились вручную (а как иначе?!), то вполне возможны ошибки и неточности.
Например, вместо английской буквы o - русская о, вместо английской с - русская с и т.п.
Разница в регистрах букв. Если внутри name возможны разделители, то возможно их разное количество.
Бывают разные варианты написания одного и того же имени (типа Наталья - Наталия, хотя, может, это разные имена?).

То есть, сравнивать строковые значения - дело неблагодарное и ненадёжное (кстати, е и ё - это разные буквы? )

P.S. про NULL при задвоенных именах - это перл, конечно. В данном конкретном запросе, естественно.
...
Рейтинг: 0 / 0
11.12.2018, 17:37
    #39746211
jan120117
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на выборку из одной таблицы по критерию из другой
iap,

влияет ли что в таблице1 значений меньше, чем в таблице2? у меня он именно подставляет значения в таком объеме, например в справочнике - таблица 1 кол-во записей 10000, а в таблице 2 записей 40000 (но при этом в этих записях есть повторы по колонке name), так вот после запроса на обновление, обновляется только 10000 записей, у остальных в ID_name проставляет NULL
вот так выглядит это у меня

1 1 NULL Mike Office
2 NULL NULL Mike House
3 2 NULL Spike Shop
4 5 NULL Flake Office
5 NULL NULL Spike Shop
.....
...
Рейтинг: 0 / 0
11.12.2018, 17:44
    #39746214
Andy_OLAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на выборку из одной таблицы по критерию из другой
jan120117обновляется только 10000 записей
Не нужно использовать Access , делайте через студию SSMS.
...
Рейтинг: 0 / 0
11.12.2018, 17:49
    #39746219
Andy_OLAP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на выборку из одной таблицы по критерию из другой
jan120117,

А, Вы же на Visual Basic под .NET пишете. Ну тогда гуглите "WFA Datasource Max Records Limit 10000".
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Запрос на выборку из одной таблицы по критерию из другой / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]