mysql - 具有 3 种形式的内连接

标签 mysql

我收到一条错误,指出“品牌”没有唯一的表/别名,但我在 SELECT 子句中将品牌设置为 b.name,所以我不明白为什么会遇到此问题。

SELECT p.productname as product, b.name as brand

from product p, brand b, foodtype f

inner join brand
on p.brand_id = b.id
inner join foodtype
on p.foodtype_id = f.id
inner join brand
on p.petcat_id = 2
inner join brand
on p.productcat_id = pr.id

order by p.brand_id, p.product_name;

别名错误

最佳答案

建议避免使用FROM {comma list of table},而只使用JOIN(可以使用如下别名。

SELECT p.productname as product, b.name as brand
from product p
inner join brand b
  on p.brand_id = b.id
inner join foodtype f
  on p.foodtype_id = f.id
where
  p.petcat_id = 2
order by p.brand_id, p.product_name;

关于mysql - 具有 3 种形式的内连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55737102/

相关文章:

php - 如何在 Phpmyadmin 中从数据库表中仅导出两列?

php - 增量MySQL

php - 按名称分组 按名称排序返回所有字母

php - 带有php和android的mysql数据库托管

MySql 选择包含空值的字段

MySQL 表分区异常行为(查询突然变慢)

PHP & MySQL - 检查数据库条目是否不存在?

php - 将 php 处理程序附加到 MySQL 的正确语法是什么?

mysql - JOIN 不以可预测的方式使用索引

mysql - Laravel 嵌套选择 + MySQL