MySQL子数据行有多个父键,需要构建select查询

标签 mysql

父表(动物)

  • 身份证号:
  • 姓名:
  • 性别:[Male=0 ,Female=1 ,other= -1DESEXED - Female=2DESEXED - Male =3 ]

enter image description here

交易表

  • 交易编号
  • Animal_Father_ID
  • Animal_Mother_ID
  • Animal_Child_ID
  • 日期
  • 状态

交易示例

enter image description here

现在有了事务表,我需要加入父表并需要获得带有动物名称的摘要;

enter image description here

我如何使用 select 语句加入 Parent Table(Animals) 并获得上述结果?

(以前的开发者创建这个结构,它有将近 20GB 的数据。现在我不能改变表结构)

最佳答案

SELECT TOP 1
   t.ID,
   p.Name as 'Name of Father',
   m.Name as 'Name of Mother',
   c.Name as 'Name if Child',
   t.Date,
   t.Status
FROM Transactions t
JOIN Animals m ON m.ID = t.Animal_Mother_ID
JOIN Animals p ON p.ID = t.Animal_Father_ID
JOIN Animals c ON c.ID = t.Animal_Child_ID

关于MySQL子数据行有多个父键,需要构建select查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47984679/

相关文章:

php - 将所选值从下拉菜单发送到另一个页面

php - 复选框选项——选择决定插入数据库的内容

mysql - Nodejs 中的日期时间偏移

java - 在 MySQL 和/或 java 中将明文密码转换为 bcrypt

mysql - azk - 如何设置测试数据库?

MySQL - FIND_IN_SET 用于逗号分隔的字段值

php - IONIC 4 和 PHP 当构建 apk 时不起作用

mysql - 结果与天数

mysql - mysqli 中查询结果错误

PHP 在单击时将超链接字符串存储到变量中