v7: Ошибка в запросе "Столбец недопустим в списке выбора" #670834


#0 by GandolF
Всем привет! При обработке запроса пишет: Столбец "dh8959.SP8949" недопустим в списке выбора, поскольку он не содержится ни в агрегатной  функции, ни в предложении GROUP BY. Собственно код: SELECT    CAST('20120101' as datetime) AS Период, FROM    dh8959 AS Док (NOLOCK)    LEFT OUTER JOIN sc2760 AS СпрПР (NOLOCK)  ON ((СпрПР.ID) = Док.sp8950)    INNER JOIN _1sJourn AS Жур (NOLOCK)  ON (Жур.IDDoc = Док.IDDoc) AND    INNER JOIN dt8959 AS ДокументСтроки_ (NOLOCK)  ON (ДокументСтроки_.IDDoc = Жур.IDDoc)   INNER JOIN sc33 AS СпрТов (NOLOCK)  ON ((СпрТов.ID) = ДокументСтроки_.sp8951) WHERE    1=1    Док.sp8949,Док.sp8950,СпрТов.ParentID,ДокументСтроки_.sp8951 В чем же ошибка? Если вместо ORDER BY ставлю GROUP BY, то всё катит, но мне не нужна GROUP BY !
#1 by Господин ПЖ
>но мне не нужна GROUP BY тебе нет... sql - да... и поверь у него пока опыта в этом больше
#2 by Волшебник
если есть SUM, значит нужна GROUP BY
#3 by vicof
то есть ты суммируешь, а группировать не хочешь? печально
#4 by GandolF
Дак вот оно чё!.. СУМ ему мешал Спасибо большое!
#5 by GandolF
Помогите ещё с одним глюком ! Код проверял через конструктор - работает, ставлю в отчет- выдаёт чушь: Meta name parser error: неизвестное метаимя или алиас "$Документ_РеализацияЗаМесяц_2" Код: |SELECT |    Документ_МатрицаТов_1.IDDoc AS [МатрицаТов_Шапка_ТекущийДокумент $Документ.МатрицаТов],
#6 by АнжелаДэвис
у тебя нет объекта в базе Документ_РеализацияЗаМесяц_2 может надоть так: Документ.РеализацияЗаМесяц_2
#7 by GandolF
Так вот же оно: $Документ.РеализацияЗаМесяц AS Документ_РеализацияЗаМесяц_2 (NOLOCK) Разве нет?
#8 by Mikeware
это не глюк
#9 by Mikeware
и что _это_? кросс джойн?
#10 by GandolF
типа того. А что не верно-то?
#11 by Ёпрст
да всё..
#12 by Mikeware
всё!
#13 by GandolF
Конкретней!
#14 by АнжелаДэвис
блин, почитай ты уже про типизацию полей...
#15 by Mikeware
соотношение радиусов слишком малО.
#16 by АнжелаДэвис
+14 если уже тебе не понятно
#17 by Mikeware
да там и без типизации...
#18 by Mikeware
в дурь написана
#19 by АнжелаДэвис
наверное, я запросы ленюсь читать )
#20 by АнжелаДэвис
+19 а то вывалят пять страниц...
#21 by Ёпрст
что в твоём понимании, должна делать конструкция |    INNER JOIN $ДокументСтроки.МатрицаТов AS ДокументСтроки_МатрицаТов_1 (NOLOCK)  ON (ДокументСтроки_МатрицаТов_1.IDDoc = __1sJourn_1.IDDoc), |    $Документ.РеализацияЗаМесяц AS Документ_РеализацияЗаМесяц_2 (NOLOCK)
#22 by АнжелаДэвис
разве не фул джойн?
#23 by Ёпрст
че ?
#24 by Mikeware
хез. я не пойму. думааю, что сиквел тоже не понимает...
#25 by GandolF
Начиная с: |    $Документ.РеализацияЗаМесяц AS Документ_РеализацияЗаМесяц_2 (NOLOCK) Обработать описанный док, т.е РеализацияЗаМесяц
#26 by АнжелаДэвис
скуль не понимает select... from table1, table2 ?
#27 by Mikeware
обработать - это удалить? просуммировать строки и разделить на фазу луны?
#28 by GandolF
Где ты видишь удаление, и  тем более суммирование ? 2-я часть нужна по-сути только для условий  в запросе. Основной является table1 (если так понимать) И на хр.. между ними джоины ??? Другой вопрос если:
#29 by Ёпрст
понимает, нежелательно использовать старый синтаксис для cross join и тут скорее старый приклол метапарсера - у ТС после from есть знаки табуляции
#30 by Mikeware
а что значчит "обработать"? почитай уже про ситнаксис...
#31 by Ёпрст
Хотя, он сам не понимает, что пишет - каша мала, а не запрос.
#32 by АнжелаДэвис
+1 но зато автор с амбициями
#33 by GandolF
Не флуди! Ни одного поста по делу... этот запрос получился через КонструкторЗапросовSQL.ert - для меня как новичка - вполне удобная веЩ, и, да, он грешит дублированием некоторых джоинов, НО  ни один ведь так и не ответил на ВОПРОС!
#34 by Ёпрст
см. вторую часть предложения
#35 by GandolF
посмотрел сразу как прочитал - не помогло,
#36 by GandolF
Ну что Умным и Без амбициозным по существу нечего больше добавить добавить !?!
#37 by Ёпрст
не помогло что ? табуляцию замени на пробелы везде.
#38 by GandolF
заменял, убирал, менял на CROSS JOIN...
#39 by Ёпрст
И ? показывай запрос из отладки
#40 by GandolF
В том-то и дело, что до отладки не доходит - спотыкаеца сразу на $Документ_РеализацияЗаМесяц_2.Клиент AS [РеализацияЗаМесяц_Шапка_Клиент $Справочник.Клиенты]
#41 by Mikeware
ОбрМетаСКЛ тоже?
#42 by Dolly_EV
А если для $Документ.РеализацияЗаМесяц просто второй INNER JOIN попробовать сделать?
#43 by ЧеловекДуши
Ужас, автор как дятел, все время бьется головой об одно и тоже место :) Использовать Кросс в запросе, это же надо, учитывая что наверняка у него там SQL 2000 х32 (максимум 4 Гб + еще сколько то, если железка поддерживает расширение памяти) :) INNER JOIN - на SQL 2000 оно работает отвратительно, т.е. быстрее будет работать Left or Right Join :) + Вот пример, как отловить ошибку парсера. //Вставь в код команду Переменная "ТекстЗапроса" - у тебя своя и содержит текст запроса :)
#44 by GandolF
Ошибку победил - плохо-хорошо, умно или глупо, но отчет заработал как часы. И ни одному "Члену" "МногоУважаемого Общества" не могу сказать спасибо! Раскритиковать чужую работу может каждый более-менее подкованный в этом деле, а вот предложить решение (пусть даже и на ваш субъективный взгляд) - НЕ СПОСОБЕН НИКТО! В остальных темах смотрел, всё тоже: автор- идиот, а то что он у вас и просит помочь разобраться, это как-то мимо прошло... Вообщем удачи вам, "кучка прыщавых юнцов" распираемых от собственной значимости, может ещё повзрослеете!
#45 by Mikeware
что, за тебя работу не сделали? Пришлось самому межушный ганглий напрягать?
#46 by GandolF
За меня мою работу никто никогда не делал и не сделает. И уж точно не тебе об этом говорить...
#47 by viktor_vv
Ты бы поделился, в чем проблема была, может кому приголится. А то становишься как все тут, по твоему мнению.
#48 by Ёпрст
показывай своё решение, старец
#49 by GandolF
Ты прав - уподобляюсь) Но делиться желание отпало, пишите в личку - поделюсь СВОИМИ наработками без всякого флуда)
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С