gpt4 book ai didi

mysql - 如何使用多个 where 子句联合或连接多个表?

转载 作者:行者123 更新时间:2023-11-29 10:45:35 24 4
gpt4 key购买 nike

我有两张表,一张是“成员(member)”,另一张是“储蓄”。成员(member)表如下:

id|DomainName|DivisionName|ZoneName|MemberId|GeneralSaving
1| hem | raj | raj |1111 |100
2| hem | raj | bog |2222 |100
3| edu | dha | dha |3333 |100
4| edu | dha | nara |4444 |100
5| busi | dha | gazi |5555 |100
6| busi | raj | raj |6666 |100

“节省”表如下:

id|DomainName|DivisionName|ZoneName|MemberId|DPS|Month|Year|AccounNo
1| hem | raj | raj |1111 |100|jan |2017|11111
2| hem | raj | bog |2222 |150|jan |2017|22221
3| edu | dha | dha |3333 |200|jan |2017|33331
4| edu | dha | nara |4444 |250|jan |2017|44441
5| busi | dha | gazi |5555 |300|jan |2017|55551

这里,ZoneName是DivisionName的子集,DivisionName是DomainName的子集。有时只给出 DomainName,有时给出 DomainName 和 DivisionName,大多数时候给出 DomainName、DivisionName、ZoneName 这三个。连接两个表后,我需要发布“成员(member)”的 GeneralSaving 和“储蓄”的 DPS,显然我无法发布同一个月的数据。一个人可以有两个或三个以上的帐号,尽管帐号是唯一的。现在如何在 laravel 5.2 中连接或合并两个表?

输出如下:域名=下摆,部门名称=raj,区域名称=raj,月=二月,年=2017

MemberId|AccountNo|GeneralSaving|DPS
1111 |11111 |100 |100
2222 |22221 |100 |150

如果域名=busi,部门名称=dha,月=二月,年=2017

MemberId|AccountNo|GeneralSaving|DPS
5555 |55551 |100 |300
6666 | |100 |

最佳答案

试试这个......

    SELECT s.MemberId, s.AccounNo, s.DPS, m.GeneralSaving
FROM member m
JOIN savings s ON CASE WHEN $DomainName != null THEN s.DomainName = $DomainName END
AND CASE WHEN $DivisionName != null THEN s.DivisionName = $DivisionName END
AND CASE WHEN $ZoneName != null THEN s.ZoneName = $ZoneName END

这里 $DomainName 、 $DivisionName 、 $ZoneName 是用户输入。

关于mysql - 如何使用多个 where 子句联合或连接多个表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44643951/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com