powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Выборка с помощью функции sum() в зависимости от значения другого поля
8 сообщений из 8, страница 1 из 1
Выборка с помощью функции sum() в зависимости от значения другого поля
    #32129957
Rinchin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Необходимо выбрать сумму по полю1 в зависмисти от значения поля2. Поле2 может быть = 0 или 1

SELECT sum(a.pole1)
FROM 1.dbf a
GROUP BY a.pole2

В этом случае срабатывает но выдает несколько строк в соотвествии с pole2
а КАК сделать чтобы все вышло в одну строку
...
Рейтинг: 0 / 0
Выборка с помощью функции sum() в зависимости от значения другого поля
    #32129960
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Необходимо выбрать сумму по полю1 в зависмисти от значения поля2. Поле2 может быть = 0 или 1

А про зависимость Пушкин писать будет, че делать то если оно 0 или 1.
...
Рейтинг: 0 / 0
Выборка с помощью функции sum() в зависимости от значения другого поля
    #32129996
Rinchin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
если я допишу здесь

SELECT sum(a.pole1)
FROM 1.dbf a
where pole2=1
GROUP BY a.pole2

тогда выборка пройдет только по значению.
а мен нужно чтобы выбрались две колонки т.е
сумма по значению 1, сумма по значению 0
...
Рейтинг: 0 / 0
Выборка с помощью функции sum() в зависимости от значения другого поля
    #32130008
Артем1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так что-ли? Или я не понял?

Код: plaintext
1.
2.
3.
SELECT 
    SUM1 = (SELECT sum(a.pole1) FROM  1 .dbf a WHERE a.Поле2 =  0 ),
    SUM2 = (SELECT sum(a.pole1) FROM  1 .dbf a WHERE a.Поле2 =  1 )
FROM  1 .dbf
...
Рейтинг: 0 / 0
Выборка с помощью функции sum() в зависимости от значения другого поля
    #32130016
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для MSSQL это можно сделать так:

Код: plaintext
1.
2.
3.
SELECT
  SUM(CASE WHEN a.pole2 =  0  THEN a.pole1 END) AS Sum1,
  SUM(CASE WHEN a.pole2 =  1  THEN a.pole1 END) AS Sum2
FROM  1 .dbf a

Но как это для Local SQL...
...
Рейтинг: 0 / 0
Выборка с помощью функции sum() в зависимости от значения другого поля
    #32130017
Rinchin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вообщем если pole2 = 0 тогда должно суммироваться в одну колонку
если же pole2 =1 то в другую т.е значение поля pole1 должно разноситься по двум колонкам в зависмости от pole2
...
Рейтинг: 0 / 0
Выборка с помощью функции sum() в зависимости от значения другого поля
    #32130586
Rinchin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не работает!

SELECT

SUM1 = (SELECT sum(a.pole1) FROM 1.dbf a WHERE a.Поле2 = 0),

SUM2 = (SELECT sum(a.pole1) FROM 1.dbf a WHERE a.Поле2 = 1)

FROM 1.dbf

может еще какие варианты есть?
...
Рейтинг: 0 / 0
Выборка с помощью функции sum() в зависимости от значения другого поля
    #32130840
oleg_e
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
select sum(p1 * p2) A1, sum(p1) - sum(p1 * p2) A2  from A
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Выборка с помощью функции sum() в зависимости от значения другого поля
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]