Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zliczenie z wykluczeniem
Pyton_000
post 6.08.2014, 08:53:30
Post #1





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Siemacie.
Dziś mam totalną pustkę w głowie.

Zapytanie:
  1. SELECT `articlecat`, COUNT(id) AS `count` FROM
  2. (
  3. SELECT `articlecat`, `id`, active FROM `easy_shop_articles`
  4. UNION
  5. SELECT category_id, article_id, -1 FROM `easy_shop_articles_to_category`
  6. ) AS gr
  7. GROUP BY articlecat


Wyjaśnienie:
  1. SELECT `articlecat`, `id`, active FROM `easy_shop_articles`

Tabela produktowa, active przyjmuje (1,2) przy czym 2 - nie aktywne
  1. SELECT category_id, article_id, -1 FROM `easy_shop_articles_to_category`

Tabela z zdodatkowymi dowiązaniami do innych kategorii. Kategoria z pierwszej tabelki tutaj nie występuje.

Generalnie wszystko działa cacy, zlicza super. Jednak nie chcę aby do zliczania były brane produkty które są nie aktywne (active == 2)
Problem jest ponieważ w drugiej tabeli nie ma informacji o active (wpisane -1 w zapytanie)

Chcę osiągnąć dokładnie taki sam wynik ale bez tych produktów nie aktywnych (zarówno z pierwszej jak i drugiej tabeli)
Wiem że muszę użyć HAVING i przegrupować inaczej ale ciemność mi nie pozwala dojrzeć rozwiązania wink.gif Służę wiedzą
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 14:04