Я получаю неоднозначную ошибку имени столбца при попытке ORDER BY по ключу no_auto и внутреннему объединению таблиц auto и location с одним и тем же ключом. Это задание, в котором я не могу изменить базу данных, я только делаю запросы. Выбранная информация поступает из таблиц modele и auto, где предложение находится из местоположения таблицы, а ORDER BY - из таблицы auto, а также из местоположения. Я предполагаю, что ошибка возникает из-за использования порядка и внутреннего соединения с одним и тем же ключом, я думал об использовании псевдонима, но не знаю, как это сделать. Спасибо за помощь.
SELECT *
FROM modèle
INNER JOIN auto
ON modèle.code_modèle = auto.code_modèle
INNER JOIN location
ON auto.no_auto = location.no_auto
WHERE coût_location > 500
ORDER BY no_auto
Попробуйте использовать ORDER BY auto.no_auto;
Проблема здесь в том, что вы заказываете по no_auto, который существует как в таблицах auto, так и в таблицах location. Добавьте префикс к no_auto в последней строке (и желательно выберите вверху), и это будет работать без этой ошибки.
Итак, либо:
SELECT *
INNER JOIN auto
ON modèle.code_modèle = auto.code_modèle
INNER JOIN location
ON auto.no_auto = location.no_auto
WHERE coût_location > 500
ORDER BY location.no_auto
Или:
SELECT *
INNER JOIN auto
ON modèle.code_modèle = auto.code_modèle
INNER JOIN location
ON auto.no_auto = location.no_auto
WHERE coût_location > 500
ORDER BY auto.no_auto
Не только «no_auto», поскольку он не знает, какой из двух «no_auto» использовать.
Нам нужно увидеть ваш пункт
SELECT
.