mysql 在需要唯一行的地方加入

标签 mysql

我有 2 个 mysql 表:products 和 Product_images。

产品:

product_id      price     discount    product_name
---------------------------------------------------
1               10.00      1.0        product 1
2               20         1.0        product 2

产品图片:

product_id    images
--------------------------
1             image 1
1             image 2
1             image 3
2             image 1

等等......

我需要选择每个产品 ID、价格、折扣、产品名称,并且仅选择 Product_images 中的第一张图片。连接正在生成多个图像重复的相同的product_id..

我如何编写相同的查询,以便product_id 是唯一的,只有product_images 表中的第一个图像???

最佳答案

尝试一下:

  select p.`product_id`, `price`, `discount`, `product_name`,`images`
  from products p 
  inner join product_images pi On p.`product_id` = pi.`product_id`
  Where stock_status = 'stock' AND status = 'Enabled'
  group by p.`product_id`

DEMO

关于mysql 在需要唯一行的地方加入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24536305/

相关文章:

php - 意外的 T_STRING,期待 T_FUNCTION

php - 选择所需的结果 SQL。使用连接或左连接的多个表

java - 更新两个数据库时如何保证事务管理

C# 应用程序创建许多连接线程,MySQL

java.sql.SQLSyntaxErrorException : Unknown column 'column_name' in 'field list' - mappings in entity are the same in as database

mysql - 根据出生日期计算年龄并返回20岁到30岁之间的行

mysql - 外部无法登录MySQL服务器

mysql - MySQL 查询出错

php - 如何死或打印 mysql has gone away error 确切原因?

java - 客户看不到新记录