KLIM
Заблокирован
Тут уже и на основной базе расхождения, корабли из Ships вылетели из результатов.
там в базе, спецально данные "неправильно" заполненыу меня такое очучение, что вы уже методом научного тыка начали писать запросы)
Я не жалуюсь, ты просто так подключилься, что я подумал что ты не в курсе.nvv13, ах данные виноваты :lol::lol::lol:
для web базы, наверное даЗЫ. норм явление, када в дочерней табле сиротные записи сидят)
ну где то близко, а чего то не доглядываемИ последняя версия - результат тот же.
Этот то вариант правильный дает результат на обоих базах. А вот мой дает две неверных, чем отличается хз, пратически все тоже самое:ну где то близко, а чего то не доглядываем
расскажу про свой вариант (может какая идея родиться)
SELECT class, sum(cl) as bul_bul
from
(
/*Идём по таблице Outcomes считая утопленников*/
select class,cl
from (
select class=isnull(
/*берем названия класса из таблички корабликов Ships*/
(select class from Ships where Ships.name=Outcomes.ship) ,
/*если же там такого корабля нет, то возьмем из таблици классов*/
(select class from Classes where Classes.class=Outcomes.ship)
)
,cl=1
from Outcomes where result = 'sunk'
) as d1
/*ну вот, и в таблице классов нет, нам такое не надо*/
where class is not null
/*это чтобы, если кораблики с данным класом, не топли, в результате тоже выбрались*/
union all
select class,cl=0 from Classes
) as uvi
/*групируем и суммируем еденички*/
GROUP BY class
4 несовпадениякрези вариант
как?
рассуждения:Этот то вариант правильный дает результат на обоих базах. А вот мой дает две неверных, чем отличается хз, пратически все тоже самое