Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 4 / 0
Регистрация: 13.02.2018
Сообщений: 26

Как пересечь две таблицы?

15.02.2018, 09:52. Показов 2439. Ответов 33
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Необходимо выбранные 2 база данных(акссес) пересечь между собой(Сравнить) и создать новую таблица на основе сравнения.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.02.2018, 09:52
Ответы с готовыми решениями:

Как сравнить две таблицы ?
Используется C# MySql Имеется Таблица 1 - редактируемая Таблица 2 - шаблон Сценарий

Как связать две таблицы
Всем здравствуйте. Как сделать чтобы при выборе в listbox любого из районов к примеру, Добрушский см. рис 1, нам выдала все записи в гриде...

FIREBIRD, две базы, две таблицы, скопировать данные из одной в другую
В наличии имеются две базы данных Firebird. Часть информации из одной нужно скопировать в другую. Так как я начинающий, поломал себе мозг....

33
Эксперт .NET
 Аватар для Usaga
14749 / 9524 / 1364
Регистрация: 21.01.2016
Сообщений: 35,937
20.02.2018, 13:51
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от dan24 Посмотреть сообщение
Короче загружаете всё в переменные типа DataTabel и начинаете сравнивать построчно.
Тут буквально парой постов выше обсуждалось, что это не лучшее решение, да и пример приводился.
0
20.02.2018, 14:43

Не по теме:

Usaga, Спасибо. но я же говорил, что в linq плаваю сильно :)
Поэтому всегда стараюсь больше логики выносить на сторону сиквела :)

0
0 / 4 / 0
Регистрация: 13.02.2018
Сообщений: 26
23.02.2018, 09:01  [ТС]
Такой вопрос, я тут разбирался в том что вы написали, спасибо большое за помощь, косячно конечно но что-то я вроде сделал и даже преподаватель сказал что вроде сойдет.
Но вот сегодня сидел читал статейки и наткнулся на информацию, что в принципе можно всю информацию из таблиц вынести в массив, а уже после курсором построчно сравнивать, это может сработать, если да? то как сравнить построчно курсором?
0
Эксперт .NET
 Аватар для Usaga
14749 / 9524 / 1364
Регистрация: 21.01.2016
Сообщений: 35,937
23.02.2018, 09:08
breik1, ну так в статейке и должно быть расписано о чём речь.

Под курсором скорее всего (вангую) понимается механизм построчного чтения данных в самой СУБД. Но массивов в СУБД нету. Так что вы какие-то две разные вещи в одну кашу смешали.
0
 Аватар для _katon_
414 / 265 / 25
Регистрация: 03.10.2011
Сообщений: 1,094
23.02.2018, 09:36
Цитата Сообщение от breik1 Посмотреть сообщение
Необходимо выбранные 2 база данных(акссес)
Цитата Сообщение от breik1 Посмотреть сообщение
..а уже после курсором построчно сравнивать..
Вы скорее всего читали про курсор для t-sql (ms sql server). У акссес (по-моему) нет курсоров.
Вот как-то так они без курсора обходятся Пример
0
0 / 4 / 0
Регистрация: 13.02.2018
Сообщений: 26
23.02.2018, 09:55  [ТС]
А если записать все данные из таблицы в массив, каждый строчка таблицы будет новым элементом массива.
И сделать аналогично со второй таблицей, и потом их пересечь, это будет так работать?
0
 Аватар для _katon_
414 / 265 / 25
Регистрация: 03.10.2011
Сообщений: 1,094
23.02.2018, 10:45
Вы говорите:
Цитата Сообщение от breik1 Посмотреть сообщение
А если записать все данные из таблицы в массив
Вам говорили уже:
Цитата Сообщение от Usaga Посмотреть сообщение
массивов в СУБД нету
Поэтому ваш вопрос непонятен.

Если в акссес-е как в t-sql можно объединить две таблицы из разных БД, то дело стоит только за написанием select, который "вытянет" все поля обоих таблиц по условиям объединения (например, id). Затем можно будет сравнить поля из select для разных таблиц и принять решение писать строку в результирующую таблицу или нет. Я к сожалению не имел дело никогда с акссес, поэтому подсказать подробности не могу.
0
360 / 287 / 76
Регистрация: 21.06.2016
Сообщений: 1,115
23.02.2018, 11:12
breik1, Оно будет работать, но нужна ли такая работа?
Т.е. можно решать задачу в лоб, а можно в лоб, но завуалировано
Тот же LINQ - красивый способ написать цикл, но в несколько раз короче по коду.
А можно работать с SQL, у которого логика работы совершенно другая, там циклы тоже можно организовать (ну как минимум в MS SQL и MySQL) - но они будут работать в сотни, а то и в тысячи раз медленнее, чем грамотно написанный запрос.
0
 Аватар для _katon_
414 / 265 / 25
Регистрация: 03.10.2011
Сообщений: 1,094
23.02.2018, 11:35
Цитата Сообщение от hoolygan Посмотреть сообщение
но они будут работать в сотни, а то и в тысячи раз медленнее, чем грамотно написанный запрос.
Я не согласен с вашим утверждением. Скорее всего время будет не только сопоставимо, но и sql-запросом выйдет быстрее. Тем не менее это зависит от многих факторов, поэтому ситуация когда linq-запрос отработал быстрее sql-запроса не исключена.
0
 Аватар для pincet
1655 / 1154 / 173
Регистрация: 23.07.2010
Сообщений: 6,914
23.02.2018, 11:54
Цитата Сообщение от hoolygan Посмотреть сообщение
А можно работать с SQL, у которого логика работы совершенно другая
совершенно верно. при работе с данными нужно приучать себя оперировать множествами. И никакой императивщины
0
360 / 287 / 76
Регистрация: 21.06.2016
Сообщений: 1,115
23.02.2018, 11:58
Цитата Сообщение от _katon_ Посмотреть сообщение
Я не согласен с вашим утверждением
Я писал о сиквельных циклах в том предложении
Вы немного не правильно поняли меня.
0
 Аватар для _katon_
414 / 265 / 25
Регистрация: 03.10.2011
Сообщений: 1,094
23.02.2018, 12:04
Цитата Сообщение от hoolygan Посмотреть сообщение
Вы немного не правильно поняли меня.
Нет я все понял именно так. Уверен, что цикл в sql будет отрабатывать быстрее чем аналогичный linq-запрос. И связанно это будет с дополнительными (относительно sql) накладными расходами связанными с множественными обращениями к объектам в куче.
0
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
24.02.2018, 02:23
_katon_, позволю себе вставить свои 5 копеек, зависит от объема изначальной выборки и сложности "фильтрации", при не самом мощном "сервере" может оказаться так, что проще(быстрее) валом слить на клиента, который сделает все необходимое, чем грузить полудохлый "сервер"
это все имхо, исходя из опыта поддержки, довольно крупных, территориально-распределенных сетей, где мощности выделялись либо "по остаточному принципу", либо "тебе хоть что-то дали(ага, первый пень с 64 метрами оперативы) и ебись как хочешь выкручивася, но ВЧЕРА должно работать...
0
 Аватар для _katon_
414 / 265 / 25
Регистрация: 03.10.2011
Сообщений: 1,094
24.02.2018, 11:57
Цитата Сообщение от _katon_ Посмотреть сообщение
Тем не менее это зависит от многих факторов, поэтому ситуация когда linq-запрос отработал быстрее sql-запроса не исключена.
Именно такие ситуации я и имел ввиду.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.02.2018, 11:57

Как можно сравнить две таблицы sql-ля?
Спасибо, а как можно сравнить две таблицы sql-ля в C# пе? Например у меня есть справочники(норма), и пациент сдает анализы. Надо что бы...

две таблицы
есть две таблицы .Столбцы одной id,name ,столбцы второй id,fname.как присвоить значению name первой таблицы значение fname второй таблицы

Связать две таблицы
сам проект в архиве при нажатии на кнопку button2 открывается form3.при нажатии на кнопку в базу заносятся значения.Мне нужно чтоб...

Две таблицы в гриде
Добрый день. Из базы выбираю две таблички (одна с оборудованием, другая справочник), написал код, и вроде все правильно, но выдает ошибку. ...

Запрос на две таблицы
Здравствуйте. Помогите, пожалуйста с запросом. Сейчас у меня вот такой запрос, он к таблице 1 присоединяет таблицу 2. В первой таблице...


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

Или воспользуйтесь поиском по форуму:
34
Ответ Создать тему
Новые блоги и статьи
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru