Mysql加入查询

标签 mysql database

我正在开发一个项目,但遇到了一个问题,因为我有三个不同的表,如查询和快照中所示。 我尝试执行以下查询并粘贴查询结果

查询

 select 
m.id,b.paybandname,m.payheadid,h.payheadname,m.basedon,find_in_set(h.id,m.basedon) as 
basedonone,m.amount,m.type from tblpay_paybandsystem b
 left join tblpay_payheadmapping m on b.id = m.paybandid
 left join tblpay_payheads h on m.payheadid = h.id

结果

enter image description here

我想要的是基于列,我想要工资名,例如在第三行,我们有 6 个基于列,但我想要工资名,对于 id=6 来说是“基本” 现在我粘贴上面查询中使用的表的快照

tblpay_payband系统

enter image description here

tblpay_payheads

enter image description here

tblpay_payheadmapping

enter image description here

最佳答案

这应该可以做到(未经测试):

select 
m.id,b.paybandname,m.payheadid,h.payheadname,h2.payheadname,find_in_set(h.id,m.basedon) as 
basedonone,m.amount,m.type from tblpay_paybandsystem b
 left join tblpay_payheadmapping m on b.id = m.paybandid
 left join tblpay_payheads h on m.payheadid = h.id 
 left join tblpay_payheads h2 on m.basedon = h2.id

关于Mysql加入查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20783531/

相关文章:

MySQL逗号分隔字段查询

mysql - 基准测试期间有趣的 MySQL 行为

mysql - SQL 语法错误 - #1064 - 您的 SQL 中有错误

c# - 连接Godaddy mysql服务器时出现错误

java - 使用双引号在 postgresql 中创建表

php - 在数据库的帮助下在 PHP 中创建一个计数器?

java - 如何在 JavaDB Derby 数据库中存储 Java 对象?

php - 1个表中的SQL连接列

mysql创建数据库和用户脚本

sql - 基于财政年度的日期拆分