mysql - 一个表中的多个外键引用另一表中的不同列
问题描述
我有两张桌子。
表一:客户
| id | name | item_name | item_type |
| -- | ---- | --------------------------- | --------------------------- |
| 1 | john | fk->items.name or items.id? | fk->items.type or items.id? |
表2:项目
| id | name | type |
| -- | ---- | --------- |
| 1 | sink | utilities |
如何从表customers.item_name
中获取值?我知道我可以使用外键,但我很困惑要引用哪些列来创建外键。我什至如何使用 php 语句调用它们?customers.item_type
items
解决方案
我相信你正在寻找这样的东西:
SELECT c.`id` as `customer_id`, c.`name` as `customer_name`,
i.`name` as `item_name`, i.`type` as `item_type`
FROM `customers` c INNER JOIN `items` i ON c.`item_name` = i.`name`
推荐阅读
- scala - Akka Stream Kafka:找不到关键“kafka-clients”的配置设置
- angular - Angular 6 管道操作从 observable 中移除类型
- django - 带有内联/嵌套数据的 Django 表单
- python - 将加密和解密从 Node.js 移动到 python
- dart - 如何获取“材料下拉选择”以显示当前模型值
- mysql - 如何在外部为 MySQL 创建密码哈希?
- javascript - React: Uncaught TypeError: this.state.data.map is not a function and
- javascript - jQuery.html() 插入输入字段在 IE11 中不起作用
- c++ - 不同类型的copy_if
- loops - 动态宏变量访问 SAS