powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / как сравнить таблицы? очень хитрая задачка
3 сообщений из 3, страница 1 из 1
как сравнить таблицы? очень хитрая задачка
    #32425046
savarez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть таблица A:
иванов | вася | 01.01.01
козлов | петя | 01.01.01
крылов | саша | 01.01.01

Есть таблица B:
иванов | вася | 02.01.01
козлов | петя | 02.01.01
вагина | лена | 02.01.01

Задача получить:
иванов | вася | 01.01.01
козлов | петя | 01.01.01
вагина | лена | 02.01.01

Т.е. то, что в B нет - из А удалить, то что в А нет - из B дописать, но при этом поверх писать нельзя - т.е. если уже запись такая (по первым двум полям) есть - то её нельзя перезаписывать.

Как это реализовать напрямую запросами?
...
Рейтинг: 0 / 0
как сравнить таблицы? очень хитрая задачка
    #32425087
McMurfy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Create Table #A (Ln NVarchar( 20 ),FN NVarchar ( 20 ),TheDate DateTime)
Create Table #B (Ln NVarchar( 20 ),FN NVarchar ( 20 ),TheDate DateTime)

Insert Into #A Values ('Иванов','Вася','20010101')
Insert Into #A Values ('Козлов','Петя','20010101')
Insert Into #A Values ('Крылов','Саша','20010101')

Insert Into #B Values ('Иванов','Вася','20010101')
Insert Into #B Values ('Козлов','Петя','20010101')
Insert Into #B Values ('Вагина','Лена','20020101')

Select #A.*
From #A INNER JOIN #B On #A.Ln = #B.Ln And #A.FN = #B.Fn
UNION 
Select #B.*
From #B LEFT JOIN #A On #A.Ln = #B.Ln And #A.FN = #B.Fn
Where #A.Fn Is Null


Извини за синтаксис TSql, надеюсь в MySQL есть все соответствующие конструкции.
...
Рейтинг: 0 / 0
как сравнить таблицы? очень хитрая задачка
    #32427075
savarez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Примного благодарен!
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / как сравнить таблицы? очень хитрая задачка
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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