Sobes.tech
Middle

როგორ შევქმნათ სვეტით შუამავალი ცხრილით მაქსიმალური კურსის თარიღისთვის?

sobes.tech AI

პასუხი AI-სგან

მესამე სვეტში, რომელიც გამოიყენება, რომ მიიღოთ მაქსიმალური თარიღი კურსის, შეგიძლიათ გამოიყენოთ SQL სვეტების აგრეგაცია და JOIN.

შესაძლოა, რომ არსებობს შემდეგი ცხრილები:

  • courses (id, სახელი)
  • course_dates (course_id, თარიღი, ფასი)

მიზანია — თითოეული კურსისთვის მიიღოთ მაქსიმალური თარიღის ჩანაწერი.

სწორად მაგალითი:

SELECT c.id, c.სახელი, cd.თარიღი, cd.ფასი
FROM courses c
JOIN course_dates cd ON c.id = cd.course_id
JOIN (
    SELECT course_id, MAX(თარიღი) AS max_თარიღი
    FROM course_dates
    GROUP BY course_id
) max_dates ON cd.course_id = max_dates.course_id AND cd.თარიღი = max_dates.max_თარიღი;

აქ:

  • ქვედა სვეტში max_dates, თითოეული კურსისთვის, აირჩევა მაქსიმალური თარიღი.
  • შემდეგ, მთავარი სვეტში, კურსები და თარიღები იკავშირებს და ფილტრავს მაქსიმალურ თარიღზე.

ეს მეთოდი საშუალებას აძლევს მიიღოთ უახლესი მონაცემები მაქსიმალური თარიღით, შუა სვეტით.