Re: Adding two select statements together
От | Josh Berkus |
---|---|
Тема | Re: Adding two select statements together |
Дата | |
Msg-id | web-1372465@davinci.ethosmedia.com обсуждение исходный текст |
Ответ на | Adding two select statements together ("Brian Johnson" <bjohnson@jecinc.on.ca>) |
Список | pgsql-novice |
Brian, > I have three tables for entering time data for projects. > > The three tables are timeentries, projects, and projectstatus. > timeentries > references the project id from projects and projects references the > projectstatus table This sounds nightmarish ... do you have any design control over the database? > I want to select all of the projects that aren't defined as > "Inactive" like > so > SELECT testproject.*, teststatus.name > FROM testproject INNER JOIN teststatus ON testproject.status = > teststatus.id > WHERE (teststatus.name<>"Inactive"); > > > but I also want to include any projects that are referenced by the > timeentries between two dates (without having duplicate project > listings) What's wrong with changing the where clause to: WHERE (teststatus.name<>"Inactive") OR EXISTS ( SELECT timeentries.projectid FROM timeentries WHERE timeentries.dateentered BETWEEN $start_date AND $end_date AND projectid = testproject.projectid); You should pick up a SQL book to learn about more clauses like EXISTS. See: http://techdocs.postgresql.org/techdocs/bookreviews.php For listings of a few books. -Josh Berkus
В списке pgsql-novice по дате отправления: