powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как получить из одной таблицы все то, чтего нет а другой?
19 сообщений из 44, страница 2 из 2
Как получить из одной таблицы все то, чтего нет а другой?
    #32040435
Фотография Maxx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вообщето можно только вот второй джойн тоже нужно привязать
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040438
Rom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я че-то не догоняю, зачем FULL Join, когда хватает Left (Right)
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040439
Фотография MiCe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если в данных есть нулл то это не прокатит...
да и полного пересечения множеств может не выйти...
нужно полное описание таблиц и немного описания логики добавления в таблицы..
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040441
Rom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да нет, вопрос как я понял стоит так, NULL значений нет, надо дополнить таблицу недостающими значениями
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040444
аня
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Тимур

аааа....попробовала код на деле...
вот хотелось бы вместь JOIN ставить что то типа EXCLUDE:)
что б получались не объединенные в одну таблицу данные, а таблица различий, которую можно не глядя в третью таблицу вставлять...
то есть
COL1|COL2| COL1|COL2
не очень то повставляешь,особенно когда надо при инсерте придерживаться структуры таблицы типа
COL1|COL2
....
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040445
Фотография MiCe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2МАКС
вулл джоин покажет полное пересечение...
но вот ЛЮЮДИИИ...
что будет если в обоих таблицах по 100000 строк?
а потом еще одну таку же запихать?
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040446
Rom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
милая девушка, так в конструкции

insert into Table1 (field1, .... , fieldN)
select t2.field1, ....., fieldN from

ты можешь указать только то, что тебе надо
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040447
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Аня, Вы все же скажИте, чего с этими таблицами делается то. Добавляете туда только, или изменяете тоже.

Какие данные там лежат, может просто по дате все легко скопируется


Вы структуру таблиц в секрете держите? :)
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040465
аня
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 tygra
Если б я знала как эти проклятые юзеры эти таблицы "портят", то я б наверно не дежала б ничего в секрете....похоже, что по дате не получиться, так как такого поля нет!
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040471
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если надо в первую таблицу добавить недостающие записи из второй, то проще всего сначала в первой таблице потереть одинаковые записи в обоих таблицах, а потом добавить вторую таблицу целиком. Т.е. как-то так:
Код: plaintext
1.
2.
delete t1 from tbl1 t1,tbl2 t2 where t1.key=t2.key
insert tbl1 select * from tbl2

Если вторая таблица большая и общих записей много, то надо как-то так
Код: plaintext
1.
2.
3.
insert tbl1
  select * from tbl2 t2 
    where not exists(select * from tbl1 t1 where t1.key=t2.key)


То что Вы пишите про timestamp - это совсем другая проблемма. Просто в это поле не надо ничего вставлять.
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040575
аня
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 SergSuper

Не работает так... Хотя очень хотелось бы...Зато работает
то, что Тимур прислал...Однако:)вставить это никак нельзя, так как full join имеет другую структуру...
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040576
аня
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 РОМ
-милая девушка, так в конструкции

-insert into Table1 (field1, .... , fieldN)
-select t2.field1, ....., fieldN from

-ты можешь указать только то, что тебе надо

Да, но проблема в том, что имена в JOIN поаторяються...Какое я тогда всьавляю? А если я использую LEFT join и правые мне не нужны, тогда это становиться опасно!
Или можно так выбирать?
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040579
Rom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в селекте ты можешь указать, какие поля из каких таблиц тебе нужны
select t2 .field1, ....., t1. fieldN from .....
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040582
Зайцев Фёдор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2AH9I

insert into #Tmp select
t1_field1 = t1.field1,
t2_field1 = t2.field2
from table 1 t1 full join table2 t2 on t1.timestamp = t2.tomestamp
where t1.timestamp is null or t2.timestamp is null

Так?
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040590
аня
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
млин!
У меня в двух таблицах двоиной ключ есть:(
Как быть????
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040591
Зайцев Фёдор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Им персональный запрос!
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040603
Фотография Jimmy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Разность двух таблиц:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
 /* SQL script */ 
create table table1 (f1 int,f2 char( 10 ),f3 numeric( 6 , 2 ))
create table table2 (f1 int,f2 char( 10 ),f3 numeric( 6 , 2 ))
go
insert table1 (f1,f2,f3) values( 1 ,'line1', 1 . 00 )
insert table1 (f1,f2,f3) values( 2 ,'line2', 2 . 00 )
insert table1 (f1,f2,f3) values( 3 ,'line3', 3 . 00 )
insert table1 (f1,f2,f3) values( 4 ,'line4', 4 . 00 )
go
insert table2 (f1,f2,f3) values( 1 ,'line1', 1 . 01 )
insert table2 (f1,f2,f3) values( 2 ,'line2', 2 . 00 )
insert table2 (f1,f2,f3) values( 3 ,'line3', 3 . 00 )
insert table2 (f1,f2,f3) values( 4 ,'line4', 4 . 01 )
go
select * into #table3 from  table1
union all
select * from table2
go
select count(*) as cnt,f1,f2,f3 
from #table3
group by f1,f2,f3
having count(*)= 1 
go

 /* results */ 
cnt         f1          f2         f3       
 ----------- ----------- ---------- -------- 
 
 1 . 00          1 . 00         line1       1 . 00 
 1 . 00          1 . 00         line1       1 . 01 
 1 . 00          4 . 00         line4       4 . 00 
 1 . 00          4 . 00         line4       4 . 01 

( 4  row(s) affected)

...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040684
MaxP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А почему нельзя использовать UNION? Но без параметра ALL.
...
Рейтинг: 0 / 0
Как получить из одной таблицы все то, чтего нет а другой?
    #32040685
Фотография Jimmy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Потому что при этом отсеиваются одинаковые записи (экземпляры).
Проверял на MS SQL2000
...
Рейтинг: 0 / 0
19 сообщений из 44, страница 2 из 2
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как получить из одной таблицы все то, чтего нет а другой?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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