如何以一对多关系返回多行

普拉纳夫·曼卡(Pranav Mankar)

我必须在数据库中的表上以客户和车辆的名字来命名,客户之间都是一对多的关系。客户有两个记录,其中customer_id = 1和2,车辆有两个记录,customer_id = 1,并且映射了vehicle_id = 1和2,customer_id = 2映射到vehicle_id = 3客户表

╦══════════════╦════════════════════╗
║ customer_id  ║       name         ║
╬══════════════╬════════════════════╣
║           1  ║      pranav        ║
║           2  ║      akshay        ║
╩══════════════╩════════════════════╝

车辆表

╦══════════════╦════════════════════╗═════════════╗
║  vehicle_id  ║    vehicle_name    ║customer_id  ║      | 
╬══════════════╬════════════════════╣═════════════║      
║           1  ║      activa        ║    1        ║
║           2  ║      access        ║    1        ║
║           3  ║      bullet        ║    2        ║
╩══════════════╩════════════════════╝═════════════╝

我得到这个

╦══════════════╦════════════════════╗═════════════╗
║  vehicle_id  ║    vehicle_name    ║    name     ║
╬══════════════╬════════════════════╣═════════════║      
║           1  ║      activa        ║   pranav    ║
║           3  ║      bullet        ║   akshay    ║
╩══════════════╩════════════════════╝═════════════╝

预期产量

╦══════════════╦════════════════════╗═════════════╗
║  vehicle_id  ║    vehicle_name    ║    name     ║
╬══════════════╬════════════════════╣═════════════║      
║           1  ║      activa        ║   pranav    ║
║           2  ║      access        ║   pranav    ║
║           3  ║      bullet        ║   akshay    ║
╩══════════════╩════════════════════╝═════════════╝

我正在使用此查询

SELECT vehicle_id,vehicle_name,customers.name 
FROM customers,vehicles 
WHERE customers.customer_id=vehicles.vehicle_id
戈登·利诺夫

请勿FROM子句中使用逗号始终使用正确,明确,标准,可读的JOIN语法。

您的问题是您的JOIN状况不正确。你要:

select v.vehicle_id, v.vehicle_name, c.name
from customers c join 
     vehicles v
     on c.customer_id = v.customer_id;

笔记:

  • 当您具有多个表引用时,请限定查询中的所有列名称。
  • 使用表别名,以便查询更易于编写和阅读。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何以一对多关系创建对象

来自分类Dev

如何以一对多关系插入,更新,删除?

来自分类Dev

如何以一对多关系创建对象

来自分类Dev

一对多关系:如何返回子表单行的几列?

来自分类Dev

我如何以雄辩的口才以一对多关系删除基于单个列的所有行?

来自分类Dev

如何在不使用while循环的情况下以一对多关系更新多行

来自分类Dev

领域:如何建立一对多关系

来自分类Dev

如何执行单向一对多关系?

来自分类Dev

如何实现一对多关系

来自分类Dev

如何添加一对多关系的项目

来自分类Dev

如何执行单向一对多关系?

来自分类Dev

领域:如何建立一对多关系

来自分类Dev

如何更新一对多关系MongoDB

来自分类Dev

与具有多行的fk建立一对多关系

来自分类Dev

Laravel 4-一对多关系返回null

来自分类Dev

实体框架-一对多关系返回错误数量的记录

来自分类Dev

一对多关系没有返回我期望的结果

来自分类Dev

Laravel一对多关系不起作用-返回递归

来自分类Dev

Laravel 5以一对多关系返回列值

来自分类Dev

实体框架中的一对多关系返回 null

来自分类Dev

laravel 雄辩的一对多关系返回 null

来自分类Dev

如何以最有效的方式在neo4j图中创建一对多关系?

来自分类Dev

学说一对多关系

来自分类Dev

播种一对多关系

来自分类Dev

一对多关系表

来自分类Dev

Laravel:一对多关系

来自分类Dev

SQL一对多关系

来自分类Dev

列出一对多关系

来自分类Dev

盖茨比一对多关系