|
Запрос. Колонка с суммой, ваши варианты? | ☑ | ||
---|---|---|---|---|
0
program1Cer
18.12.12
✎
15:01
|
Блин чет стал доставать этот недоSQL или может я чего неправильно делаю?
ВЫБРАТЬ "НЗ1" КАК НарядЗаказ, 100.5 КАК НормаВремени ПОМЕСТИТЬ ВТНарядЗаказы ОБЪЕДИНИТЬ ВЫБРАТЬ "НЗ2" КАК НарядЗаказ, 110.5 КАК НормаВремени ; //ВЫБРАТЬ //НарядЗаказ, НормаВремени, (ВЫБРАТЬ Сумма(НормаВремени) ИЗ ВТНарядЗаказы) КАК Сумма //ИЗ ВТНарядЗаказы //; ВЫБРАТЬ НарядЗаказ, НормаВремени, Сумма КАК СуммаНормаВремени ИЗ ВТНарядЗаказы ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ Сумма(НормаВремени) КАК Сумма ИЗ ВТНарядЗаказы) КАК ВложенныйЗапрос ПО ИСТИНА Еще есть варианты как получить колонку с суммой? |
|||
1
GLazNik
18.12.12
✎
15:03
|
(0) чего-чего? получить то чего хотим?
|
|||
2
exwill
18.12.12
✎
15:04
|
А меня русский язык достает. Там в предложении, как минимум, подлежащее и сказуемое. Пробовал сокращать, пересают понимать.
|
|||
3
program1Cer
18.12.12
✎
15:04
|
(1) Ты запрос прогони в консоли и увидишь чего получить хочу.
|
|||
4
pessok
18.12.12
✎
15:05
|
(3) это какая-то тяжелая форма наркомани...
|
|||
5
exwill
18.12.12
✎
15:06
|
Для твоей задачи - нормальный запрос. Я бы только "левое соединение" и "по истина" убрал.
|
|||
6
GLazNik
18.12.12
✎
15:06
|
(3) не.... спасибо... мне это не нужно
|
|||
7
Wobland
18.12.12
✎
15:07
|
(3) моя консоль не знает про ВТНарядЗаказы
|
|||
8
Wobland
18.12.12
✎
15:08
|
(7) а, уже знает же
|
|||
9
GLazNik
18.12.12
✎
15:08
|
и собственно в чем заключается в данном случае "недоSQL"?
|
|||
10
Wobland
18.12.12
✎
15:09
|
ну прогнал. ну и что? там мультика разве нет в конце?
|
|||
11
program1Cer
18.12.12
✎
15:10
|
(7) А твои глаза видят, что это тестовый пример и там ПОМЕСТИТЬ ВТНарядЗаказы. Работает везде.
(9) А ты знаешь как в нормальном SQL такая задача решается? (5) По истина там нужна, это пока в ней нет смысла потому что измерение только по НарядЗаказу |
|||
12
program1Cer
18.12.12
✎
15:11
|
(10) Извини, что разочаровал, по делу может что скажешь? вроде опытный.
|
|||
13
Wobland
18.12.12
✎
15:12
|
короче, я устал сам себе задачу телепатировать. не доходит
|
|||
14
program1Cer
18.12.12
✎
15:13
|
(13) очень жаль, что увидев результат ты так и не понял, какая задача и что нужно получить.
|
|||
15
Wobland
18.12.12
✎
15:14
|
личный полезный пример общего характера. берётся бумажка, на бумажке рисуются исходные таблицы, желаемый результат. думается
|
|||
16
exwill
18.12.12
✎
15:14
|
В 1С - почти нормальный SQL (если понимать под нормой стандарт ANSI). Список ненормальностей 1С-овского SQL короче, чем у большинства других вендоров.
|
|||
17
Wobland
18.12.12
✎
15:14
|
(14) хватит тут чтогдекогду устраивать ;)
|
|||
18
Нуф-Нуф
18.12.12
✎
15:15
|
ВЫБРАТЬ
"НЗ1" КАК НарядЗаказ, 100.5 КАК НормаВремени ПОМЕСТИТЬ ВТНарядЗаказы ОБЪЕДИНИТЬ ВЫБРАТЬ "НЗ2", 110.5 ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ СУММА(ВТНарядЗаказы.НормаВремени) КАК НормаВремени ПОМЕСТИТЬ ВТНарядЗаказыИтого ИЗ ВТНарядЗаказы КАК ВТНарядЗаказы ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТНарядЗаказы.НарядЗаказ, ВТНарядЗаказы.НормаВремени, ВТНарядЗаказыИтого.НормаВремени КАК НормаВремениИтого ИЗ ВТНарядЗаказы КАК ВТНарядЗаказы ЛЕВОЕ СОЕДИНЕНИЕ ВТНарядЗаказыИтого КАК ВТНарядЗаказыИтого ПО (ИСТИНА) |
|||
19
program1Cer
18.12.12
✎
15:15
|
(15) Пример таблицы из 2х строк требует у тебя листка бумаги, теперь ты меня разочаровал.
|
|||
20
exwill
18.12.12
✎
15:17
|
ТС ищет черную кошку в темной комнате, в то время, как ее там нет.
|
|||
21
program1Cer
18.12.12
✎
15:18
|
(18) Блин. Почти тоже самое, только через временную. Обычный SQL же позволяет для данной задачи применить вариант, который в коментарии?
|
|||
22
Wobland
18.12.12
✎
15:18
|
(19) сочувствую. реально, больше двух-трёх строк примера никогда не рисовал - хватало ;)
|
|||
23
exwill
18.12.12
✎
15:21
|
(21) В твоем комментарии ненормальный SQL, ибо нарушется принцип замкнутости.
|
|||
24
program1Cer
18.12.12
✎
15:22
|
(22) Вот Нуф-Нуф понял о чем и предложил хоть какую-ту альтернативу, а ты не понял даже о чем я и лезешь со своими листочками. Было бы таблиц 5-6 я бы еще воспринял твой совет всерьез.
|
|||
25
Reset
18.12.12
✎
15:26
|
Мне показалось, или ТС необразованный грубиян, не способный связать двух слов?
|
|||
26
Wobland
18.12.12
✎
15:26
|
(24) не хочешь - как хочешь. а мне лениво играть играть в игру "угадай, что я хочу"
|
|||
27
program1Cer
18.12.12
✎
15:27
|
(23) на sql-ex сейчас затестил.
SELECT code, price, (SELECT sum(price) FROM Printer) AS PriceSum FROM Printer Ничего не нарушается. |
|||
28
Wobland
18.12.12
✎
15:27
|
(25) по-моему человек перетрудился и не понимает, как выглядит со стороны. хотя, у меня уже появилось подозрение про год рождения
|
|||
29
GLazNik
18.12.12
✎
15:29
|
(25) не показалось...
всего то к (22) выяснилось что хотел ТС |
|||
30
exwill
18.12.12
✎
15:32
|
(27) То, что пример работает, еще не означает что принцип соблюдается.
|
|||
31
program1Cer
18.12.12
✎
15:32
|
Кому-то к (22) стало ясно, кому-то сразу. Проблема видимо не во мне.
|
|||
32
Wobland
18.12.12
✎
15:34
|
(31) раскрой возраст, а?
|
|||
33
Aprobator
18.12.12
✎
15:35
|
(27) этот запрос прям брат с (0) )
Итоги Сумма(Норма) ПО ОБЩИЕ. И пару финтов с результатом запроса. |
|||
34
Aprobator
18.12.12
✎
15:35
|
(32) клеишься? о_О
|
|||
35
program1Cer
18.12.12
✎
15:37
|
(27) Ок. Пусть даже и не соблюдается, хотя я думаю если ты взглянешь какой создается план запроса для него, то ты изменишь свое мнение. Как видишь в коде я не применял какие специфичные для СУБД функции, чистый ANSI SQL
|
|||
36
Goggy
18.12.12
✎
15:37
|
(33) А я бы ему не раскрывал даж такого способа, больно наглый клиент.
|
|||
37
Aprobator
18.12.12
✎
15:41
|
(36) не думаю, что ему это поможет )
|
|||
38
program1Cer
18.12.12
✎
15:41
|
(36) В чем моя наглость, простите? В том что, я дал специально тестовый пример, который выдает результат, что я хочу получить, а следующие посты в теме до (18) о том что я хочу получить?
|
|||
39
GLazNik
18.12.12
✎
15:43
|
(31) возможно и есть такие скромные телепаты, но в этом топике они не замечены
|
|||
40
exwill
18.12.12
✎
15:45
|
(35) ANSI тоже портит SQL потихоньку. Твой запрос с соединением в некотором смысле более нормален, чем запрос, в котором в ячейку впендюривается таблица.
|
|||
41
Reset
18.12.12
✎
15:47
|
Зато в 1С есть виртуальные таблицы и обращения через точку
|
|||
42
program1Cer
18.12.12
✎
15:54
|
(37) что там был за вариант, может поможет?
|
|||
43
program1Cer
18.12.12
✎
15:56
|
(37) Да не сильном помогло, финты требуют еще больше кода чем соединение.
|
|||
44
Aprobator
18.12.12
✎
17:32
|
(43) да ладно, там финтов то на три минуты.
|
|||
45
program1Cer
18.12.12
✎
18:11
|
(44) Цель треда найти способ без финтов как раз, если он есть вообще, если нет то остается лучше мой вариант или (18)
|
|||
46
Александр_
Тверь 18.12.12
✎
18:15
|
В каждой фразе ТС чувствуется, что он красавчик, а все остальные в (__?__)
|
|||
47
Жан Пердежон
18.12.12
✎
18:31
|
(46) недопрог изучает недоSQL, это нормально)
|
|||
48
Жан Пердежон
18.12.12
✎
18:32
|
главное язык запросов 77 ему не показывать
|
|||
49
Undefined vs NULL
18.12.12
✎
18:34
|
скалярный аргумент получать, где потенциально выборка (набор) это не гуд, это как goto, только хуже чуток
|
|||
50
vmv
18.12.12
✎
18:35
|
сколняюсь к версии, что это накротики, а не попытка решения задачи
косвенные предпосылки 1. истерики 2. неадекватное восприятие простых фактов 3. нечеткое разъяснение постановки задач 4. бессвязный лепет мдя |
|||
51
Undefined vs NULL
18.12.12
✎
18:39
|
а смысл соединять полученную сумму (в рамках запроса неизменную величину), ну получи ее отдельным запросом или в ВТ и радуйся
|
|||
52
program1Cer
18.12.12
✎
18:56
|
(49) Ты это так авторитетно заявляешь, показал бы план запроса который строит СУБД при том и том варианте тогда. (50) сразу видно спец по сильнодействующим веществам
1. где истерика? только код, только хардкор) 2. каких фактов? что 1Cовское подобие SQL не может, то что может стандартный SQL? 3. куда вам еще четче то? дали пример, спросили можно ли сделать по другому? наплодили по 50 сообщений из которых по сути только 3. 4. мдя |
|||
53
program1Cer
18.12.12
✎
20:15
|
(49) Можешь не утруждаться с планом запроса, я проверил, ты не прав.
|
|||
54
Нуф-Нуф
18.12.12
✎
20:16
|
Ниче вы раздули
|
|||
55
xTim
19.12.12
✎
12:26
|
Дашь больше холливара!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |