комплексный комбинат sql - PullRequest
0 голосов
/ 29 января 2010

запрос 1: будут учтены все записи по электронной почте'emali@test.com'

select count(*) as total from userbase
join extrauserinfofromhrms on userbase.username = extrauserinfofromhrms.useremail
right join logevent on userbase.username = logevent.useremail
join eachworkflow on logevent.workflowid= eachworkflow.workflowid
where logevent.actionname ='complete'  and logevent.useremail like 'email@test.com'

запрос 2: список всех пользователей с электронными письмами ..

select userbase.username from userbase
join extrauserinfofromhrms on userbase.username = extrauserinfofromhrms.useremail

как использовать query2 для вывода списка всех пользователей с адресом электронной почты и использовать каждый адрес электронной почты в качестве параметра в query1?

1 Ответ

1 голос
/ 29 января 2010

SQL - это язык на основе множеств. Лучше всего, когда мы перестаем мыслить построчно. То, что вы должны использовать, является агрегирующим запросом:

select userbase.username  
      , count(*) as total 
from userbase 
    join extrauserinfofromhrms on userbase.username = extrauserinfofromhrms.useremail 
    right join logevent on userbase.username = logevent.useremail 
    join eachworkflow on logevent.workflowid= eachworkflow.workflowid 
where logevent.actionname ='complete'  
and logevent.useremail like 'email@test.com' 
group by userbase.username 
/
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...