Обнаружил еще одно отличие синтаксиса запросов 1С от синтаксиса SQL, в в редко используемой конструкции ИМЕЮЩИЕ.
Предложение ИМЕЮЩИЕ позволяет накладывать условия на значения агрегатных функций. В других конструкциях языка запросов, например, в предложении ГДЕ, использовать агрегатные функции в условиях нельзя. В условии отбора ИМЕЮЩИЕ можно использовать только агрегатные функции и поля, по которым осуществляется группировка.
В синтаксисе запросов 1С нельзя указывать псевдоним поля, в этой конструкции.
ВЫБРАТЬРеализацияТоваровуслугТовары.Номенклатура,
СУММА(РеализацияТоваровуслугТовары.Количество) КАК Продано
ИЗ
Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровуслугТовары
СГРУППИРОВАТЬ ПО
РеализацияТоваровуслугТовары.Номенклатура
ИМЕЮЩИЕ
СУММА(РеализацияТоваровуслугТовары.Количество) >= 70
Ну а соответственно в SQL можно, что очень удобно, поскольку у агрегатного поля всегда есть псевдоним.
Вот пример запроса на SQL.
SELECT
Fld16131,
Fld16132,
SUM(Fld16134) AS Fld16134Turnover
FROM AccumReg16128
WHERE Active
GROUP BY Fld16131, Fld16132
HAVING Fld16134Turnover <> 0
по моему в 2000 скуле нельзя было....
ОтветитьУдалитьMiCe