【发布时间】:2022-01-24 19:24:24
【问题描述】:
我有一个 SQL Server 表,我在其中插入帐户数据,例如 A/C#,这是 varchar 字段,我将 id 作为主键。
在其他收费表中,帐户# 存储在 2 个不同的列中,分别是利息 A/C# 和利润 A/C#; A/C#在行中不同
客户检索需要显示的费用数据和帐号。
由于两者都是不同的字段,我应该为两个字段都做外键到主表
请以最佳方式指导。
Account Table
----------------------
id | AccountNumber
-----------------
1 | 4321
--------------
2 | 5432
--------------
3 | 6543
--------------
4 | 7654
--------------
5 | 8765
--------------
Charges Table
----------------------
id | interestA/c# |Profit A/c#
-----------------------------
1 | 2 |3
-----------------------------
2 | 3 |4
-----------------------------
3 | 4 |5
-----------------------------
4 | 5 |1
-----------------------------
输出:从费用中选择 *;
---------------
1 | 5432 |6543
---------------
2 | 6543 |7654
---------------
3 | 7654 |8765
---------------
4 | 8765 |4321
---------------
【问题讨论】:
-
请展示你目前的尝试并解释卡在哪里
-
“我应该对主表的两个字段都做外键吗?” —> 是的
-
SELECT c.id, a.InterestA/C#, a.ProfitA/C# FROM Charges c INNER JOIN Account a ON a.id = c.[interestA/C#] 我正在使用上述查询和它没有用。
标签: sql sql-server tsql