Subject | RE: [firebird-support] sql query in firebird |
---|---|
Author | Leyne, Sean |
Post date | 2013-02-11T22:47:59Z |
Olaf,
SELECT
Order.PERSON_WHO_GET as Person
FROM Order
WHERE Order.ID = 123
UNION
SELECT
Project.Manager as Person
FROM Project
JOIN Order ON Order.ProjectID = Project.ProjectID
WHERE
Order.ID = 123
UNION
SELECT
ProjectSend.Person_who_get_info as Person
FROM ProjectSend
JOIN Order ON Order.ProjectID = ProjectSend.ProjectID
WHERE
Order.ID = 123
Sean
> fb 2.1 cs is runningYes, UNION is your friend!
>
> Now I have four tables:
>
> Persons:
> ID
> Name
>
> ORDER:
> ProjectID
> PERSON_WHO_GET (references ID from Persons)
> STATUS
>
> Projects:
> ProjectID
> Manager (references ID from Persons)
>
> ProjectSEND:
> ProjectID
> PERSON_WHO_GET_INFO (references ID from Persons)
>
> Each Person (ID) is unique, each ProjectID too. Every order has one
> person_who_get, one Project has 1:n orders. In ProjectSend can I configure
> many persons who get an email for one Project.
>
> Starting with the order table and its status (open), I can reference to the
> project, than to the projectSend-Table. I would get all Persons (ID) grouped,
> which are deposited with the order, the project (in dependence on
> procect) and who is configurated to became an email (ProjectSend)
>
>
> For example:
>
> Order 123
> Person who get Order: 2
> For Projekct ABC
> ProjectManager for ABC: 23
>
> ProjectSend f
> Project: ABC, Person_who_get_info: 32
> Project: ABC, Person_who_get_info: 33
>
>
> Now I would get some results:
>
> Person 2
> Person 23
> Person 32
> Person 33
>
> It is possible without a stored procedure?
SELECT
Order.PERSON_WHO_GET as Person
FROM Order
WHERE Order.ID = 123
UNION
SELECT
Project.Manager as Person
FROM Project
JOIN Order ON Order.ProjectID = Project.ProjectID
WHERE
Order.ID = 123
UNION
SELECT
ProjectSend.Person_who_get_info as Person
FROM ProjectSend
JOIN Order ON Order.ProjectID = ProjectSend.ProjectID
WHERE
Order.ID = 123
Sean