Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Выборка из нескольких таблиц  [new]
ПавликМорозов
Member

Откуда:
Сообщений: 19
SELECT post428.date , post428.ID_Serial, post613.date,post613.ID_Serial
from post428, post613
where post428.ID_User=1 and post613.ID_User=1


Как сделать что бы если записи нету в одной из талиц она не записывалась прежней
на скриншноше видно как копируется значение из второй таблицы хотя оно там только одно
16 май 17, 18:27    [20486400]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36965
Модератор:
ПавликМорозов
Как сделать что бы если записи нету в одной из талиц она не записывалась прежней
на скриншноше видно как копируется значение из второй таблицы хотя оно там только одно
Уважаемый Павлик. Потрудитесь, пожалуйста, привести незамутненный поток вашего сознания в формат, понятный другим людям. Заодно можно ознакомиться с рекомендациями по оформлению сообщений.
16 май 17, 18:31    [20486416]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
ПавликМорозов
Member

Откуда:
Сообщений: 19


К сообщению приложен файл. Размер - 4Kb
16 май 17, 18:33    [20486426]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
ПавликМорозов
Member

Откуда:
Сообщений: 19
У меня в первой таблице два значения с айди 1 а во второй только одно, но выводит как будто тоже два
16 май 17, 18:34    [20486432]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36965
ПавликМорозов
У меня в первой таблице два значения с айди 1 а во второй только одно, но выводит как будто тоже два
И как же оно должно выводиться тогда?
16 май 17, 18:35    [20486435]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
ПавликМорозов
Member

Откуда:
Сообщений: 19
Гавриленко Сергей Алексеевич, ну по идее если там значение не 1 то должно быть null
16 май 17, 18:37    [20486444]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
Руслан Дамирович
Member

Откуда: Резиновая нерезиновая
Сообщений: 940
Гавриленко Сергей Алексеевич
ПавликМорозов
У меня в первой таблице два значения с айди 1 а во второй только одно, но выводит как будто тоже два
И как же оно должно выводиться тогда?

[telepathy]
SELECT 
  [table] = 'post428',
  [date],
  [ID_Serial]
FROM 
  post428
WHERE 
  [ID_User] = 1
UNION ALL
SELECT 
  [table] = 'post613',
  [date],
  [ID_Serial]
FROM 
  post613 
WHERE 
  [ID_User] = 1

[/telepathy]
16 май 17, 18:40    [20486448]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36965
ПавликМорозов
Гавриленко Сергей Алексеевич, ну по идее если там значение не 1 то должно быть null
А с чего вы взяли, что вам в какой-то записи ваш запрос выбрал записи, у которых ID_User не 1?
16 май 17, 18:42    [20486453]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
Руслан Дамирович
Member

Откуда: Резиновая нерезиновая
Сообщений: 940
ПавликМорозов
Гавриленко Сергей Алексеевич, ну по идее если там значение не 1 то должно быть null

А вы в курсе, как работает декартово произведение? Вы получили то, что написали в своем запросе.
Озвучивайте, что у вас есть в исходных данных и что нужно получить в результате.
16 май 17, 18:42    [20486454]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7746
ПавликМорозов,

неужели не понятно, что для каждой записи из первой таблицы запрос выводит все записи, соответствующие условию сравнения из второй таблицы?
16 май 17, 18:44    [20486458]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7746
Намекну, что условия сравнения данных у Вас нет в запросе.
16 май 17, 18:45    [20486460]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
Руслан Дамирович
Member

Откуда: Резиновая нерезиновая
Сообщений: 940
Попытка 2.
WITH
post428 AS (
  SELECT 
    [date],
    [ID_Serial],
    [rn] = ROW_NUMBER() OVER ( ORDER BY [date], [id_serial] )
  FROM 
    post428
  WHERE 
    [ID_User] = 1
),
post613 AS (
  SELECT 
    [date],
    [ID_Serial],
    [rn] = ROW_NUMBER() OVER ( ORDER BY [date], [id_serial] )
  FROM 
    post613 
  WHERE 
    [ID_User] = 1
)
SELECT
  post428.*,
  post613.*
FROM
  post428
  FULL JOIN post613 ON (
        post613.[rn] = post428.[rn] )

З.Ы. Не мешайте мне развивать телепатические навыки, я в проджект-менеджеры хочу податься...
16 май 17, 18:46    [20486462]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7746
Также существуют такая штука, как типы объединения.
16 май 17, 18:47    [20486465]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
ПавликМорозов
Member

Откуда:
Сообщений: 19
Руслан Дамирович,

Спасибо, извините я новичок) но благодаря вам я понял что задал очень глупый вопрос

но ответ получил)
16 май 17, 18:50    [20486470]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
ПавликМорозов
Member

Откуда:
Сообщений: 19
Руслан Дамирович,

Подскажите такой запрос можно разбить на две колонки post428.data и 613.data что бы не все в одном было

SELECT post428.date as hh
from post428
where post428.ID_User=1

union all
SELECT post613.date as lol
from post613
where post613.ID_User=1
16 май 17, 19:03    [20486507]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
Добрый Э - Эх
Guest
Владислав Колосов
Также существуют такая штука, как типы объединения.
обьединение всего одно - union [all]. А те типы, о которых ты вещаешь, есть у соединений
16 май 17, 19:04    [20486511]     Ответить | Цитировать Сообщить модератору
 Re: Выборка из нескольких таблиц  [new]
Руслан Дамирович
Member

Откуда: Резиновая нерезиновая
Сообщений: 940
ПавликМорозов
Подскажите такой запрос можно разбить на две колонки post428.data и 613.data что бы не все в одном было

Попытка 2...
17 май 17, 09:46    [20488115]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить