Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
gitarillo
728 / 528 / 45
Регистрация: 17.06.2010
Сообщений: 1,027
Записей в блоге: 1
1

Получение данных из таблицы на основе ранее совершенной выборки

27.12.2011, 11:45. Просмотров 838. Ответов 5
Метки нет (Все метки)

Всем привет.
В общем систуация такова.
СУБД - MySql
Работаю с базой через windows-приложение .net.
Делается выборка из первой таблицы базы Таблица1. Структура пусть такая:
НомерКомпания
5525Газпром
3326Лукойл

в коде я делаю запрос

vb.net
1
SELECT * FROM Таблица1
и получаю результат в объект DataTable.

Есть вторая таблица Таблица2
НомерСчет
5525123
3326144

Так вот мне на основе данных после первого запроса нужно добавить колонку к объекту DataTable с именем счет и сделать запрос ко второй таблице и получить значения номер счетов. И в итоге в DataTable я хочу получить такую таблицу.

НомерКомпанияСчет
5525Газпром123
3326Лукойл144


На данном этапе у меня есть реализация и она следующая.
Сначала я делаю запрос к первой таблице и отправляю результат в объект DataTable.
Далее я добаляю пустую колонку к DataTable с именем Счет.
Далее циклом прохожусь по DataTable и на каждой итерации выполняю выборку (второй запрос) и получаю для каждой строки значение номера счета. Эти данные я отправляю во второй созданный объект DataTable. Далее я переношу данные из второго DataTable в добавленную колонку первого и уже первый DataTable отправляю в Датагрид. Все бы ничего, но если записей много, то программа висит архидолго.
Прошу помочь сделать выборку номера счета средствами запроса и без итераций. Спасибо.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.12.2011, 11:45
Ответы с готовыми решениями:

dataset.xsd adapter на основе select выборки всех полей таблицы, метод fill
Создан типизированный источник dataset.xsd, добавлена предположим таблица на основе select'а всех...

TreeView на основе таблицы из базы данных MS SQL
Добрый вечер! Есть таблица в базе данных, в ней: requirment_id - первичный ключ, также есть...

Получение данных из таблицы HTML
Доброго времени суток! Уже неделю пытаюсь найти материал по своему вопросу, но, к сожалению,...

Получение произвольной записи таблицы из базы данных
Есть база данных, в ней таблица. В таблице определяется поле, в котором хранится вероятность...

Ввод строки на основе ранее полученных данных
Есть ли в Паскале средства, которые позволят без применения хитро-мудрых библиотек "сторонних...

5
pincet
1328 / 916 / 123
Регистрация: 23.07.2010
Сообщений: 4,983
27.12.2011, 13:19 2
SQL
1
2
SELECT * FROM [Таблица1] t1
    JOIN [Таблица2] t2 ON t1.номер=t2.номер
2
gitarillo
728 / 528 / 45
Регистрация: 17.06.2010
Сообщений: 1,027
Записей в блоге: 1
28.12.2011, 17:07  [ТС] 3
pincet, Спасибо еще раз. Сделал простым обединением таблиц. стало работать быстрее гораздо. Но вот возникла проблема с запросм на удаление. То есть все тоже самое, но мне нужно удалить запись из первой таблицы если во второй таблице для этого номера скажем счет=значение.
Не придется ли тут использовать хранимые процедуры?
0
pincet
1328 / 916 / 123
Регистрация: 23.07.2010
Сообщений: 4,983
28.12.2011, 17:30 4
Чего откуда надо удалить?
0
gitarillo
728 / 528 / 45
Регистрация: 17.06.2010
Сообщений: 1,027
Записей в блоге: 1
28.12.2011, 17:48  [ТС] 5
Первая таблица
НомерКомпания
5525Газпром
3326Лукойл

Вторая таблица
НомерСчет
5525123
3326144


Удалить запись из первой таблицы, если для поля первой таблицы Номер значение поля счет
второй таблицы равно 123
0
pincet
1328 / 916 / 123
Регистрация: 23.07.2010
Сообщений: 4,983
28.12.2011, 18:24 6
SQL
1
2
DELETE FROM [table1] t1 INNER JOIN [table2] ta ON t1.[номер]=t2.[номер]
   WHERE t2.[счет]=....
только от лукавого это - нарушаешь целостность данных
а если включено каскадное удаление - то и из второй таблицы запись удалится
1
28.12.2011, 18:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.12.2011, 18:24

Ввод данных, добавление данных, получение информации из файла по заданным критериям выборки
Все привет!!!Обращаюсь к вам за помощью...никак не получается решить задачку... Суть...

Обновление данных одной таблицы на основе данных другой таблицы
мне нужно создать запрос на обновление данных одной таблицы на основе данных из другой таблицы....

Выборка данных из таблицы на основе данных другой таблицы
Доброго времени суток, программисты. Такая проблема: $inquiry = mysql_query("SELECT * FROM...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru