|
MySQL.RU - Webboard
Вернуться
Возвращение к старому (Михаил) 10/09/2014 - 18:34:58
Re: Возвращение к старому (Akina) 10/09/2014 - 18:48:46
Re: Возвращение к старому (Михаил) 10/09/2014 - 19:32:24
Re: Решено (Михаил) 10/09/2014 - 19:49:55
From: Михаил - 10/09/2014 - 18:34:58
Subject:Возвращение к старому
-----------------
В начале года задавал вопрос:
Можно ли сделать выборку одним запросом? (Михаил) 30/01/2014 - 23:11:17
Вроде бы тогда решили, но...
Недавно обнаружили расхождение в данным. Стал выяснять откуда растут ноги и обнаружил следующее.
Есть наш запрос:
SELECT view1.partner_id, t3.quantity - t2.quantity delta, view1.free
FROM (
SELECT DISTINCT t1.partner_id, t1.free
FROM orders t1
WHERE number_id IN (36,38)
) view1
LEFT JOIN orders t2 ON t2.number_id = 36 AND t2.partner_id = view1.partner_id AND t2.free = view1.free
LEFT JOIN orders t3 ON t3.number_id = 38 AND t3.partner_id = view1.partner_id AND t3.free = view1.free
WHERE t2.quantity != t3.quantity;
Он прекрасно работает, если фирма присутствует в обоих заказах (с number_id = 36 и 38)
Но если фирма ушла из заказа или появилась новая, то сравнение не работает.
То есть если t3.quantity или t2.quantity равно NULL то фирма выпадает из сравнения.
Можно ли исправит запрос, чтобы в случае t3.quantity=NULL подставлялось вместо NULL 0?
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
43190
|
|