Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 [4] 5 6 7 8   вперед  Ctrl      все
 Re: Как сравнить две колонки с условием  [new]
Glory
Member

Откуда:
Сообщений: 104751
PavelAA
Мешает то, что тогда нарушается формула, потому что CarNumber там нет.

Причем тут CarNumber ?
"и поле TesId которое равно полю IDSourceSt из таблицы dl." - что мешает сделать соединение по этим полям ?
4 апр 13, 11:41    [14134683]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
PavelAA
Member

Откуда:
Сообщений: 121
Glory, к сожалению я не знаю как... если начинаю ниже всего этого прописывать ругается, видимо неправильно прописываю.
4 апр 13, 11:48    [14134724]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
Glory
Member

Откуда:
Сообщений: 104751
PavelAA
Glory, к сожалению я не знаю как...

Что как ?
После таблицы dl написать join вы не в силах что ли ?
4 апр 13, 11:49    [14134738]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
PavelAA
Member

Откуда:
Сообщений: 121
Glory
PavelAA
Glory, к сожалению я не знаю как...

Что как ?
После таблицы dl написать join вы не в силах что ли ?


В силах, как прицепить к данной конструкции не в силах.
4 апр 13, 11:57    [14134822]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
Glory
Member

Откуда:
Сообщений: 104751
PavelAA
В силах, как прицепить к данной конструкции не в силах.

Взять и написать руками.
После FROM dl написать JOIN.
4 апр 13, 12:01    [14134855]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
PavelAA
Member

Откуда:
Сообщений: 121
Glory, прошу прощения, но кроме ваших советов не программировать, обратиться в хелп и гугл, помощи я не увидел, не вижу смысла тогда таких форумов. Если мой вопрос кажется вам очень глупым, можно просто не отвечать.
Вопрос актуален, жду ответа.... Гость333 вся надежда на тебя)
4 апр 13, 12:07    [14134899]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
Glory
Member

Откуда:
Сообщений: 104751
PavelAA
Glory, прошу прощения, но кроме ваших советов не программировать, обратиться в хелп и гугл, помощи я не увидел, не вижу смысла тогда таких форумов. Если мой вопрос кажется вам очень глупым, можно просто не отвечать.

Т.е. надо за вас написать весь текст запроса ?
Сами вы не в состоянии даже просто в _указанное_ место добавить ни символа ?
4 апр 13, 12:08    [14134919]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
from cte c1
    inner join tell c2 on c2.TesId = c1.SourceStCode and c2.rownum = c1.rownum - 1 
    inner join  dl dl1 on dl.IDSourceSt = c2.TesId   --- я так понимаю ето строчка которая нужна ?
where c2.TesId <> c1.SourceStCode
4 апр 13, 12:12    [14134953]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
PavelAA
Member

Откуда:
Сообщений: 121
Maxx
from cte c1
    inner join tell c2 on c2.TesId = c1.SourceStCode and c2.rownum = c1.rownum - 1 
    inner join  dl dl1 on dl.IDSourceSt = c2.TesId   --- я так понимаю ето строчка которая нужна ?
where c2.TesId <> c1.SourceStCode


нет, rownum берется из cte так что уже строка неверная, в tell нет Carnumber.
4 апр 13, 12:15    [14134976]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
Glory
Member

Откуда:
Сообщений: 104751
Maxx
from cte c1
    inner join tell c2 on c2.TesId = c1.SourceStCode and c2.rownum = c1.rownum - 1 
    inner join  dl dl1 on dl.IDSourceSt = c2.TesId   --- я так понимаю ето строчка которая нужна ?
where c2.TesId <> c1.SourceStCode

Да таблица dl у автора внутри cte
А он тупит и не может туда добавить джойн.
И ждет когда разжуют, проглотят и переварят за него.
4 апр 13, 12:15    [14134977]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
with cte as
(  .......
   from  dl 
       inner join tell ...... ? 
 
)

мдя.....
4 апр 13, 12:18    [14134987]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
PavelAA
Member

Откуда:
Сообщений: 121
Maxx Спасибо :)
Glory да, автор глупый... действительно очень просто, но одна строчка значительно сократила бы ваше и мое время...

проблема остается, по поводу сравнения и условия.
4 апр 13, 12:31    [14135092]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
Glory
Member

Откуда:
Сообщений: 104751
PavelAA
но одна строчка значительно сократила бы ваше и мое время...

Т.е. прямого указания "После FROM dl написать JOIN. " недостаточно ?
Вы либо не читаете ответы, либо вам не нужны объяснения, а только готовый текст
4 апр 13, 12:33    [14135123]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
PavelAA,

а чем вот ето не подходит ?
Вапрос
4 апр 13, 12:34    [14135134]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
PavelAA
Member

Откуда:
Сообщений: 121
Glory
PavelAA
но одна строчка значительно сократила бы ваше и мое время...

Т.е. прямого указания "После FROM dl написать JOIN. " недостаточно ?
Вы либо не читаете ответы, либо вам не нужны объяснения, а только готовый текст


У меня ругался в том месте, читаю и принимаю критику. Я потом еще раз подправил и получилось.
4 апр 13, 12:40    [14135182]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
Glory
Member

Откуда:
Сообщений: 104751
PavelAA
У меня ругался в том месте, читаю и принимаю критику. Я потом еще раз подправил и получилось.

Бла-бла-бла
4 апр 13, 12:41    [14135193]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
PavelAA
Member

Откуда:
Сообщений: 121
Вот так написал, выделяет when
4 апр 13, 13:51    [14135637]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
PavelAA
Member

Откуда:
Сообщений: 121
Случайно отправил :( Вот кусок текста

inner join cte c2 on c2.CarNumber = c1.CarNumber
and c2.rownum = c1.rownum - 1
When c1.ForeignSourceStCode Not Null and c1.ForeignDestStCode Not Null
then c2.ForeignDestStCode <> c1.ForeignSourceStCode
else
c2.DestStCode <> c1.SourceStCode
order by c1.CarNumber
4 апр 13, 13:51    [14135641]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
PavelAA
Вот так написал, выделяет when

как ?
4 апр 13, 13:52    [14135643]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
PavelAA,
when без case не бывает
case
  when
  then
  else
end
4 апр 13, 13:54    [14135659]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
PavelAA
Member

Откуда:
Сообщений: 121
Maxx
PavelAA,
when без case не бывает
case
  when
  then
  else
end

Пишет : Неправильный синтаксис около ключевого слова "Case".

select c1.InvNumber, c2.invnumber, c1.CarNumber, c1.SendDate, c1.ReceiveDate, c1.SourceStCode, c1.DestStCode,c1.ExpCode,c1.OutInfo,c1.Code,c1.ForeignSourceStCode,c1.ForeignDestStCode, c2.DestStCode as Prev_IDDestSt

from cte c1

inner join cte c2 on c2.CarNumber = c1.CarNumber
and c2.rownum = c1.rownum - 1
Case
When c1.ForeignSourceStCode Not Null and c1.ForeignDestStCode Not Null then c2.ForeignDestStCode <> c1.ForeignSourceStCode
else c2.DestStCode <> c1.SourceStCode
End

order by c1.CarNumber
4 апр 13, 14:01    [14135701]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
PavelAA,
 and Case 
4 апр 13, 14:02    [14135713]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
PavelAA,

CASE - это функция, возвращающая одно значение определённого типа.
Причём, в MSSQL булевого типа нет!
4 апр 13, 14:03    [14135722]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
Maxx
PavelAA,
 and Case 
Он же там ещё пытается вернуть результат сравнения
4 апр 13, 14:04    [14135729]     Ответить | Цитировать Сообщить модератору
 Re: Как сравнить две колонки с условием  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
iap
Maxx
PavelAA,
 and Case 

Он же там ещё пытается вернуть результат сравнения

ето будет следущее Ему то предложили ее использовать для расчета формулы,а не для условия джойна
4 апр 13, 14:06    [14135744]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 [4] 5 6 7 8   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить