Не могу понять строку в базе данных

Рейтинг: -1Ответов: 1Опубликовано: 02.08.2023

Не могу понять строку в базе данных. Вроде понимаю что переменной $query передаётся SQL команда SELECT, но вот что в написано в команде не пойму. Почему написано с.name, а потом p.id итд. Почему было сначала с.что-то, а потом стало р.что-то. И если не сложно укажите как данная команда бы выглядела для PostgresSQL

 $query = "SELECT
        c.name as category_name, p.id, p.name, p.description, p.price, p.category_id, p.created
    FROM
        " . $this->table_name . " p
        LEFT JOIN
            categories c
                ON p.category_id = c.id
    ORDER BY
        p.created DESC";

Ответы

▲ 0Принят

Это называется join и буквы c. и p. это alias для таблиц, таблица categories имеет alias c, а вторая таблица видимо products имеет alias p и в запросе SELECT указывается, что какие-то данные берем из категорий, а какие-то данные из таблицы продуктов.