Вы проверили функцию PIVOT? Вы не упоминаете, какую версию SQL Вы используете, но это доступно в 2008 и делает в значительной степени, что Вы после.
Кроме того, Ваш код кажется ужасно неэффективным. Вы делаете, выбирает внутреннюю часть, выбирает выборку назад данные, к которым у Вас уже есть доступ. Возможно, мне нелегко отождествлять с Вашим набором данных, но он походит на потребность в операторе выбора в Вашей текущей ситуации, а не много выборов. Я верю следующим работам:
select
i.gName,
case i.pSize when 0 then sum(Quantity) else 0 end as [0ml],
case i.pSize when 180 then sum(Quantity) else 0 end as [180ml],
case i.pSize when 375 then sum(Quantity) else 0 end as [375ml],
{ rest of case samples }
from
saleslog as s
inner join ItemGroup as i on s.pGroup = i.gGroup
where
s.BillDate = '01-06-2010'
group by
i.gName
Я также немного смущен по Вашему вопросу. Вы упоминаете, что у Вас есть две таблицы, у каждого есть идентификатор и iSize, но я не вижу iSize, таким образом, я принимаю pSize (?). Кроме того, Ваша таблица sales не совпадает с Вашим запросом, т.е. нет никакой суммы количества в Вашей таблице sales, Ваш создавало упоминания [продажи], но Ваше фактическое использование запроса [salesdata].
Возможно, еще некоторое разъяснение?
Vyatta удалила IPS из 6.4, а обновления правил перестали работать для ВСЕХ версий IPS 31 марта.
Это подробно описано в их FAQ по Версии 6.4
http: // www .vyatta.com / files / pdfs / Vyatta_6_4_FAQ_Final.pdf
Хотя ThreatSTOP не выполняет профилирование на основе сигнатур, которое делает SNORT, он блокирует многие из тех же атак более эффективно, чем IDS на основе сигнатур.
ThreatSTOP работает путем обнаружения в облаке, где системы ThreatSTOP и источники данных определяют поведение вредоносного ПО, обнаруживая IP-адреса, с которых оно исходит и контролируется. Затем принудительное применение выполняется на брандмауэре с использованием IP-адресов, которые намного более эффективны, чем проверка на основе сигнатур.
Это не увеличивает нагрузку на брандмауэр, которую выполняет IDS,