php mysql 在2个表内动态选择

标签 php mysql sql-server

table A
id name Bid Cid Wheretolook
1 aaa      1      0      B
2 bbb      2      0      B
3 bbb      0      1      C

Table B
id transactiondetails
1       zzz
2       xxx

Table C
id transactiondetails
1      yyy

我这里有 3 个表,表 A 保存两个表表 B 和表 C 的外键。这两个表内部没有我想要得到的相同信息。有没有办法使用 mysql SELECT 语句从表 B 和 C 中选择所有信息来收集所有交易详细信息

最佳答案

SELECT 
  a.id, 
  a.name, 
  COALESCE(b.transactiondetails, c.transactiondetails) AS transactiondetails
FROM TableA a
LEFT JOIN TableB b ON a.Bid = b.id
LEFT JOIN TableC c ON a.Cid = c.id

如果 Bid 和 Cid 中必须有一个 0,那么 Wheretolook 列似乎就没有必要了。

关于php mysql 在2个表内动态选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25661059/

相关文章:

javascript - 显示 data-id 到 <select> Bootstrap 模式

javascript - nodejs 中的 mysql 函数第一次工作

mysql - php中的联合SQL查询

sql - 使用 BCP 查询输出获取列名

php - 在 php 中按 exif 数据对图像进行排序

php - 如何在 PHP 5 中获取数组的引用?

php - MySQL 重复条目造成内部服务器错误

c# - C# 中的电子邮件通知系统

Sql 列添加另一列

sql-server - 从表中设置变量