powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Подставить значение 0 если нет данных во второй таблице
25 сообщений из 54, страница 1 из 3
Подставить значение 0 если нет данных во второй таблице
    #39655476
ZummeP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Прописал следующий запрос:
select s.id, s.skucode, s.name, sum(l.units)
from sku s
left join loads l on l.sku_id = s.id
where s.skucode not like '%z%'
and l.real_loc_id >= 1
and l.status = 'A'
and warehouse_id = 0
group by s.id,
s.skucode,
s.name
Выдает след. инфо:
s.ID s.skucode s.name sum(l.units)
1 534 210w760 Имя 1 6614
2 551 211w320 Имя 2 150
Нужно что бы были еще нулевые значения если в таблице Loads значения s.id из таблицы sku отсутствуют.
Полистав информацию ничего не понял.
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655482
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZummeP,
убрать в предикат LEFT JOIN
Код: sql
1.
2.
and l.real_loc_id >= 1
and l.status = 'A'
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655494
ZummeP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaPaK,

Мне немного не понятно, по этому перезадам свой вопрос следующим образом.
Мне нужно чтобы в столбце sum(l.units) было 0 если значений S.id в таблице Loads нет
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655495
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZummeP,

SUM(ISNULL(l.units,0))
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655496
ZummeP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaPaK,

это я пробывал не подходит программа не знает данную функция SQL Developer
Version 6.0.0.840
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655499
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZummePTaPaK,

это я пробывал не подходит программа не знает данную функция SQL Developer
Version 6.0.0.840

омг... NVL() и идите в правильную ветку
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655505
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZummePTaPaK,

Мне немного не понятно, по этому перезадам свой вопрос следующим образом.
Мне нужно чтобы в столбце sum(l.units) было 0 если значений S.id в таблице Loads нетДля S.id, которых нет, Вы, однако, в WHERE требуете
Код: sql
1.
2.
and l.real_loc_id >= 1
and l.status = 'A'

Поэтому этих записей в результате SELECTа вообще не будет.
Так что сначала сделайте так, как Вам посоветовал TaPaK двумя постами выше.
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655547
Фотография Щукина Анна
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaKомг... NVL() и идите в правильную веткуCOALESCE. И пусть спрашивает, где удобно...
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655559
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Щукина АннаTaPaKомг... NVL() и идите в правильную веткуCOALESCE. И пусть спрашивает, где удобно...
для вас и туалеты наверное не М/Ж а стоя и сидя
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655602
ZummeP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всю голову сломал ничего, не получается.
Он мне попросту не выдает значения ноль так как нет записей во второй таблице
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655609
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZummePВсю голову сломал ничего, не получается.
Он мне попросту не выдает значения ноль так как нет записей во второй таблице1. До вас дошло, что вы про Oracle спрашиваете на форуме по MS SQL?
2. Не получается перенести условия из WHERE в ON LEFT JOINа, как вам советовали?
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655611
ZummeP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
iap,

То что не там спрашиваю я это понял,
и условия не получается перевести что то не так прописываю
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655614
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZummeP,

и какой запрос получился?
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655623
Посетитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZummeP,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
select s.id, s.skucode, s.name, coalesce(sum(l.units),0)
  from sku s
  left join loads l on l.sku_id = s.id
                   and l.real_loc_id >= 1
                   and l.status = 'A'
 where s.skucode not like '%z%'
and warehouse_id = 0--Если это относится к loads - тоже надо перекинуть в джоин
group by s.id,
s.skucode,
s.name
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655624
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZummePiap,

То что не там спрашиваю я это понял,
и условия не получается перевести что то не так прописываю
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
select s.id, s.skucode, s.name, sum(nvl(l.units,0))
from sku s
left join loads l on l.sku_id = s.id and l.real_loc_id >= 1 and l.status = 'A'
where s.skucode not like '%z%'
and warehouse_id = 0
group by s.id,
s.skucode,
s.name

Если warehouse_id тоже в таблице loads , то и and warehouse_id = 0 тоже в ON перенести
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39655627
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZummeP,

кстати, надо ВСЕГДА писать алиас таблицы (для ясности и сокращения количества ошибок)
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39656077
ZummeP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем за помощь, но в итоге сделал все через макрос в Excel.
Но есть одно, в полученной таблице у меня есть единицы измерения (ЕИ) "UNIT", "UPAK" и "КГ" так же в соседней колонке есть "вес нетто"
Мне нужно чтобы в колонке кол-во при условии что ЕИ UPAK и КГ был вес нетто умноженный на кол-во.
Это то что я написал в макросе:
"select sku.id,sku.skucode,sku.name,sum(nvl(v_rs2_current_stock13d.qty,0)) qty,sku.uom,sku.weight_netto " & _
"from sku left join v_rs2_current_stock13d on v_rs2_current_stock13d.sku_id=sku.id and nvl(v_rs2_current_stock13d.warehouse_id, 100) not in (1, 2) " & _
"where nvl(v_rs2_current_stock13d.warehouse_id, 100) not in (1, 2) and sku.id>0 and ((upper(SUBSTR(trim(sku.skucode),4,1)) like '%W%' " & _
"or upper(SUBSTR(trim(sku.skucode),4,1)) like '%V%' " & _
"or upper(SUBSTR(trim(sku.skucode),4,1)) like '%R%' " & _
"and SUBSTR(sku.skucode,8,1) is null) or v_rs2_current_stock13d.qty>0) " & _
"group by sku.id,sku.skucode,sku.name,sku.uom,sku.weight_netto order by skucode;"
Получилось:
SKU Артикул Наименование товара кол-во ЕИ Вес нетто
133128 *w* Печенье 44 upak 5
Если кто то знает как это можно сделать то напишите пожалуйста пример если нет то будем выходит с помощь формул. и в дальнейшем через фильтрацию
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39656082
Посетитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZummeP,

Excel,конечно, MS
но не MS SQL.
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39656096
ZummeP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А возможно ли это сделать оператором CASE
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39656097
Посетитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZummeP,

конечно
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39656105
ZummeP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Посетитель,

не могли пример написать а то что то пока не могу разобраться по инфо в инете?
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39656181
Посетитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZummeP,

пример оператора case?
легко

Код: sql
1.
case when x=y and z>5 then a*b else c end
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39656188
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaKSUM(ISNULL(l.units,0))
Правильнее isnull(sum), а не sum(isnull).
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39656207
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.TaPaKSUM(ISNULL(l.units,0))
Правильнее isnull(sum), а не sum(isnull).
какие ваши смешные доказательства этого бреда?
...
Рейтинг: 0 / 0
Подставить значение 0 если нет данных во второй таблице
    #39656238
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отключенные мозги — вот это смешно.
А указанная рекомендация — это логично.
...
Рейтинг: 0 / 0
25 сообщений из 54, страница 1 из 3
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Подставить значение 0 если нет данных во второй таблице
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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