+ Ответить в теме
Показано с 1 по 2 из 2

Тема: Помогите плиз с запросом

  1. #1
    senglory is on a distinguished road
    Регистрация
    05.09.2008
    Сообщений
    3
    Вес репутации
    0

    По умолчанию Помогите плиз с запросом




    Вот такая база. Нужно вернуть запрос , который вернет всех работников старше 50 и участвовавших в разработке более чем 10 проектов. В выводе должны быть колонки

    - Имя
    - Возраст
    - Дата последнего проекта (на основе ProductEmployee.Date)

    Я написал так:

    Код sql:
    1. SELECT e0.Name, e0.Age, tt.Name AS TheLastProduct
    2. FROM Employee e0
    3. JOIN (
    4. SELECT e.ID
    5. FROM Employee e
    6. JOIN ProductEmployee pe ON pe.EmployeeID = e.ID
    7. JOIN Product p ON p.ID = pe.ProductID
    8. WHERE e.Age > 50
    9. GROUP BY e.ID
    10. HAVING COUNT( p.ID) > 10
    11. ) e1 ON e1.ID = e0.ID
    12. CROSS apply
    13. (
    14. SELECT top 1 p1.ID, p1.Name FROM Product p1
    15. JOIN ProductEmployee pe2 ON p1.ID = pe2.ProductID
    16. WHERE pe2.EmployeeID = e1.ID ORDER BY pe2.Date DESC
    17. ) tt

    Но мне сказали что есть решение лучше. Что-то не пойму как оно выглядит. Подскажите, плиз.
    Последний раз редактировалось senglory; 15.09.2017 в 23:23.

  2. По умолчанию

     
    Хотите избавиться от рекламы? Зарегистрируйтесь
  3. #2
    Administrator Админ
    system architect
    AiK is on a distinguished road Аватар для AiK
    Регистрация
    13.02.2004
    Адрес
    СПб
    Сообщений
    2,297
    Вес репутации
    80

    По умолчанию Re: Помогите плиз с запросом

    Правильно сказали. У тебя в середине спрятан запрос, который полностью решает поставленную задачу. Что навёрнуто снаружи - одному автору известно.
    Даже самый дурацкий замысел можно воплотить мастерски

+ Ответить в теме

Похожие темы

  1. Помогите плиз срочно плиз ЗАчеТ
    Люди помогите плиз зачет уже завтра ссутра а я и понятие не имею как на паскале графику рисовать, напишите плиз прогу как растет елочка, т.е. с низу...
    от di-r13 в разделе задачи на Паскале и Delphi
  2. Помогите с запросом в Accesse(е)!!!!
    Уважаемые программисты! Пожалуйста помогите в Access(е)!!! Имеется табличка, в ней поле "ФИО" - список сотрудников типа "Петрова И.М.". Нужно...
    от Sammy в разделе MS Office и VB(A).
  3. Помогите с запросом на выборку
    Объясните как сделать так, чтобы два выражения соеденить в одно. То еть у меня есть в запросе 2 строки и два выражения, которые считают проценты....
    от DIDI8 в разделе MS Office и VB(A).
  4. Помогите с запросом
    Как надо изменить запрос, что-бі он работал в Interbase, учитывая что тот практически не понимает вложеных подзапросов? select FPACCOUNTID from ...
    от Chester в разделе SQL

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения