Re: Proper relational database?

Поиск
Список
Период
Сортировка
От Geoff Winkless
Тема Re: Proper relational database?
Дата
Msg-id CAEzk6fcTC-MGmcG86ZRAfwuyy5X6uC8noDy1W+zAHE0RhLHtFw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Proper relational database?  (Thomas Munro <thomas.munro@enterprisedb.com>)
Ответы Re: Proper relational database?  (Geoff Winkless <pgsqladmin@geoff.dj>)
Список pgsql-general
On 24 April 2016 at 08:36, Thomas Munro <thomas.munro@enterprisedb.com> wrote:
> For example, say we want all students who have one or more exam today:
>
>   SELECT s.student_id, s.name
>     FROM student s
>    WHERE EXISTS (SELECT 1
>                    FROM exam e
>                   WHERE e.student_id = s.student_id
>                     AND e.exam_date = CURRENT_DATE)

To be fair to SQL a far simpler version would be

SELECT DISTINCT student_id, name
FROM student
INNER JOIN exam USING(student_id)
WHERE exam_date=CURRENT_DATE;

To find students with no exam today (the other point of your argument):

SELECT student_id, name
FROM student
LEFT JOIN exam USING(student_id)
WHERE exam_date=CURRENT_DATE AND exam.student_id IS NULL;

Not really sure what the issue is with either of those. Once learned,
they're both very easy and straightforward.

Geoff


В списке pgsql-general по дате отправления:

Предыдущее
От: "Tomas J Stehlik"
Дата:
Сообщение: Re: Is it possible to recover the schema from the raw files?
Следующее
От:
Дата:
Сообщение: Re: Proper relational database?