«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как указать неоднозначный столбец user_id в предложении MySQL WHERE?

Как указать неоднозначный столбец user_id в предложении MySQL WHERE?

Опубликовано 7 ноября 2024 г.
Просматривать:583

How to Specify the Ambiguous \'user_id\' Column in a MySQL WHERE Clause?

Устранение неоднозначности в предложении WHERE 'user_id' MySQL

При работе с несколькими таблицами, которые имеют одно и то же имя столбца, MySQL может столкнуться с двусмысленностью при использовании этот столбец в предложении WHERE. Это видно из сообщения об ошибке user_id, где предложение является неоднозначным.

Рассмотрим пример запроса:

SELECT user.*, user_info.* 
FROM user 
INNER JOIN user_info ON user.user_id = user_info.user_id
WHERE user_id=1

В этом запросе обе таблицы «user» и «user_info» имеют столбец «user_id». Однако MySQL не может определить, какой столбец 'user_id' использовать в предложении WHERE.

Разрешение неоднозначности

Чтобы разрешить неоднозначность, мы должны указать, какой 'user_id' столбец для использования. Этого можно добиться, добавив имя таблицы в качестве префикса к имени столбца, как показано ниже:

... WHERE user.user_id=1

Указав 'user.user_id', мы явно заявляем, что хотим использовать столбец «user_id» из таблицы «user» в предложении WHERE.

Это уточнение устраняет двусмысленность и позволяет MySQL выполнять запрос, не встречая «user_id» в месте, где пункт является неоднозначной ошибкой. Не забывайте всегда указывать префикс таблицы при ссылке на неоднозначные имена столбцов в предложении WHERE, чтобы избежать этой и подобных проблем в будущем.

Заявление о выпуске Эта статья воспроизводится: 1729663275 Если есть какие -либо нарушения, пожалуйста, свяжитесь с учебным заведением[email protected], чтобы удалить его.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3