|
Запрос с выбором записей, выбирает почему-то 2 | ☑ | ||
---|---|---|---|---|
0
Coldboy
08.10.14
✎
12:21
|
Здравствуйте. В запросе нужно выбрать строку, ту у которой период больше. Почему выдает в результате обе, хотя период больше у 2. Почему? вот запрос:
"ВЫБРАТЬ | ВЫБОР | КОГДА ЕСТЬNULL(НеПустой.Период, ДАТАВРЕМЯ(1, 1, 1)) >= ЕСТЬNULL(ПустойСклад.Период, ДАТАВРЕМЯ(1, 1, 1)) | ТОГДА НеПустой.ЧелКомплект | ИНАЧЕ ПустойСклад.ЧелКомплект | КОНЕЦ КАК ЧелКомплект, | ВЫБОР | КОГДА ЕСТЬNULL(НеПустой.Период, ДАТАВРЕМЯ(1, 1, 1)) >= ЕСТЬNULL(ПустойСклад.Период, ДАТАВРЕМЯ(1, 1, 1)) | ТОГДА НеПустой.Коэффициент | ИНАЧЕ ПустойСклад.Коэффициент | КОНЕЦ КАК Коэффициент, | ВЫБОР | КОГДА ЕСТЬNULL(НеПустой.Период, ДАТАВРЕМЯ(1, 1, 1)) >= ЕСТЬNULL(ПустойСклад.Период, ДАТАВРЕМЯ(1, 1, 1)) | ТОГДА НеПустой.Период | ИНАЧЕ ПустойСклад.Период | КОНЕЦ КАК Период |ИЗ | (ВЫБРАТЬ | ТаблицаСвязиЧелКомплектаСрезПоследних.Период КАК Период, | ТаблицаСвязиЧелКомплектаСрезПоследних.Номенклатура КАК Номенклатура, | ТаблицаСвязиЧелКомплектаСрезПоследних.ЧелКомплект КАК ЧелКомплект, | ТаблицаСвязиЧелКомплектаСрезПоследних.ГотоваяПродукция КАК ГотоваяПродукция, | ТаблицаСвязиЧелКомплектаСрезПоследних.Склад КАК Склад, | ТаблицаСвязиЧелКомплектаСрезПоследних.Коэффициент КАК Коэффициент, | ТаблицаСвязиЧелКомплектаСрезПоследних.Период КАК Период1 | ИЗ | РегистрСведений.ТаблицаСвязиЧелКомплекта.СрезПоследних( | &Период, | Номенклатура = &Номенклатура | И Склад = &Склад) КАК ТаблицаСвязиЧелКомплектаСрезПоследних) КАК НеПустой | ПОЛНОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ | ТаблицаСвязиЧелКомплектаСрезПоследних.Период КАК Период, | ТаблицаСвязиЧелКомплектаСрезПоследних.Номенклатура КАК Номенклатура, | ТаблицаСвязиЧелКомплектаСрезПоследних.ЧелКомплект КАК ЧелКомплект, | ТаблицаСвязиЧелКомплектаСрезПоследних.ГотоваяПродукция КАК ГотоваяПродукция, | ТаблицаСвязиЧелКомплектаСрезПоследних.Склад КАК Склад, | ТаблицаСвязиЧелКомплектаСрезПоследних.Коэффициент КАК Коэффициент, | ТаблицаСвязиЧелКомплектаСрезПоследних.Период КАК Период1 | ИЗ | РегистрСведений.ТаблицаСвязиЧелКомплекта.СрезПоследних( | &Период, | Номенклатура = &Номенклатура | И Склад = &ПустойСклад) КАК ТаблицаСвязиЧелКомплектаСрезПоследних) КАК ПустойСклад | ПО НеПустой.ЧелКомплект = ПустойСклад.ЧелКомплект"; |
|||
1
Жан Пердежон
08.10.14
✎
12:28
|
потому что условие отбора прописывается в разделе "ГДЕ"
|
|||
2
Жан Пердежон
08.10.14
✎
12:30
|
либо добавь еще условие связи не номенклатуре
|
|||
3
Coldboy
08.10.14
✎
12:34
|
(2) условие отбора ? всмысле 2 выборки из переодических регистров. на номенклатуру добавлял связь
|
|||
4
Coldboy
08.10.14
✎
12:56
|
up. в чем проблема ?
|
|||
5
hhhh
08.10.14
✎
13:50
|
ТаблицаСвязиЧелКомплекта какие измерения у регистра? Наверно, забыл про какое-то измерение.
|
|||
6
Ёпрст
08.10.14
✎
13:53
|
(0) всё в топку.
|
|||
7
Ёпрст
08.10.14
✎
13:56
|
а так, бери либо максимум, либо минимум, либо первые.. смотря че надо.
А твой запрос не "отсеивает" строки.. если че, case этого не делает |
|||
8
Ёпрст
08.10.14
✎
13:57
|
(2) условие связи ему не поможет, у него же фулл джоин :)
|
|||
9
Килограмм
08.10.14
✎
14:00
|
Так ты считаешь каким образом ты сейчас в запросе вообще фильтруешь (пытаешься отфильтровать) строку с большим периодом?
|
|||
10
Килограмм
08.10.14
✎
14:10
|
И ещё, как обрабатывается момент, когда периоды будут совпадать и, соответственно, невозможно отобрать больший?
|
|||
11
Coldboy
08.10.14
✎
16:52
|
(7) блин а вот в типовом похоже запросе, именно отсеивает как-то ...
|
|||
12
Coldboy
08.10.14
✎
16:53
|
(7) сделал выбрать первые и сортиранул в порядке убывания, то есть брал с наибольшим периодом, но все же меня это смущает )
|
|||
13
Ёпрст
08.10.14
✎
16:53
|
(11) либо там не полное соединение, либо там группировка, либо там еще что, нам отсюда не видно
|
|||
14
Ёпрст
08.10.14
✎
16:54
|
(12) чем ?
|
|||
15
Coldboy
08.10.14
✎
17:00
|
(14) ну не знаю мб есть скрытые ошибки и как то просто все получается и обыденно.
|
|||
16
Килограмм
08.10.14
✎
17:31
|
(15) это же хорошо, когда просто и обыденно
|
|||
17
Жан Пердежон
08.10.14
✎
18:02
|
(11) там есть скрытый код запроса - написан белым шрифтом на белом фоне - он всю скрытую магию и делает
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |