【问题标题】:Joining 3 Tables, mysql php加入3个表,mysql php
【发布时间】:2014-03-04 18:31:16
【问题描述】:

如何加入所有三个表?我不知道,因为我需要将它们全部调用到 1 个表中

客户

+--------+------------+---------------+---------+---------+
| serial |    name    |     email     | address |  phone  |
+--------+------------+---------------+---------+---------+
| 1      | first_name | email@web.com | address | 7777777 |
+--------+------------+---------------+---------+---------+

订单

+--------+------------+------------+
| serial |    date    | customerid |
+--------+------------+------------+
| 1      | 2014-03-04 | 1          |
+--------+------------+------------+

订单详情

+---------+-----------+----------+-------+
| orderid | productid | quantity | price |
+---------+-----------+----------+-------+
| 1       | 1         | 30       | 400   |
| 1       | 2         | 10       | 500   |
+---------+-----------+----------+-------+

orders上的customerid是表customers上的序列号,表order_detail上的orderidorders上的序列号

如果我使用另一张桌子怎么办?对于productid,productid = product_id 在另一个表中?

非常感谢您的帮助,我真的很抱歉这张桌子,我不知道如何在这里制作桌子,但它们是有序的。

【问题讨论】:

  • 您查看过 JOIN 语句吗?

标签: php mysql sql sql-server


【解决方案1】:

您只需要使用 Join 语句。所以你可以做以下

Select * from Customers
join orders on Customers.serial = orders.customerid
join order_detail on orders.serial = order_detail.orderid

您还可以创建另一个名为 Product 的表并按照我向您展示的方式加入。

如果你想从不同的表中选择列,那么你必须使用tablename.columnname。因此,例如,如果您想从 order_detail 表中选择数量和价格,请执行以下操作

 Select * from Customers,order_detail.quantity,order_detail.price
join orders on Customers.serial = orders.customerid
join order_detail on orders.serial = order_detail.orderid

希望你明白我的意思。

【讨论】:

  • 如果他们这样加入我怎么称呼他们? :)
  • @user3361094 你看不到我在选择客户数据吗?你叫他们什么意思?
  • 使用Table.ColumnName
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-14
  • 1970-01-01
相关资源
最近更新 更多