Вопрос новичка в MySQL: Присоединение к списку строк для расширения таблицы?

#mysql #sql

Вопрос:

потерпите, это, наверное, очень просто, но я только недавно начал работать с SQL.

Итак, в настоящее время у меня есть таблица, которая выглядит примерно так:

 SELECT startDate FROM table1
GROUP BY startDate
 
Дата начала
2020-01-01
2020-02-01
2020-03-01

Но я пытаюсь расширить это до чего-то подобного, надеюсь, со списком строк, определенных в самом запросе:

Дата начала ранг
2020-01-01 Ранг 1
2020-01-01 Ранг 2
2020-02-01 Ранг 1
2020-02-01 Ранг 2
2020-03-01 Ранг 1
2020-03-01 Ранг 2

Оттуда у меня есть некоторые расчеты в уме, которые я хочу сделать. Есть ли какой-нибудь хороший способ на самом деле сделать это?

Ответ №1:

Перекрестное соединение таблицы с синтезированной таблицей, содержащей ранги.

 SELECT t1.startDate, t2.`rank`
FROM table1 AS t1
CROSS JOIN (
    SELECT 'Rank 1' AS `rank`
    UNION
    SELECT 'Rank 2'
) AS t2