to pytanie zadane przez Ryana Franka na forums.mysql.com, z którym również stoję.WHERE klauzula wewnątrz COUNT (DISTINCT) klauzula
Mam następujący na początku mojego SELECT:
SELECT accounts.id, accounts.company, accounts.first, accounts.last,
COUNT(DISTINCT accounts_log.login_time) AS visits,
COUNT(DISTINCT accounts_log.ip_address) AS visitors,
COUNT(DISTINCT documents_log.access_time) AS docs,
MAX(accounts_log.login_time) AS login_time
FROM accounts
ta zwraca wszystkie zmienne muszę; jednak chcę ograniczyć zmienne, które używają COUNT (DISTINCT) do zakresu dat. Nie mogę użyć klauzuli WHERE po klauzuli FROM. Na przykład:
FROM accounts
WHERE accounts_log.login_time >='$search_from' AND accounts_log.login_time <='$search_to'
nie będzie działać, ponieważ nie dałoby mi wszystkich kont, których potrzebuję.
szukam czegoś podobnego:
COUNT(DISTINCT accounts_log.login_time WHERE accounts_log.login_time >='$search_from' AND accounts_log.login_time <='$search_to') AS visits
PS: Wiem, że powyższe nie działa i skończyły się opcje składni.
Nie pokazujesz nam całego zapytania. Skąd pochodzi tabela 'accounts_log'? –
Załóżmy, że możesz zamienić account_log na konta – eyaler