如何在mssql中为每个UserID分配两个AccountID?

1 t-sql sql-server

我需要为每个UserID分配他们的AccountID.因此,DB中有两个表:用户和帐户.

用户表:

UserID    FirstName    LastName    
1         Adam         Barnes      
2         Mike         Radley      
Run Code Online (Sandbox Code Playgroud)

账户表:

AccountID    PaymentMethod
1            Card
2            Purse
Run Code Online (Sandbox Code Playgroud)

结果应该是:

UserID    AcountID    PaymentMethod
1         1           Card
1         2           Purse
2         1           Card
2         2           Purse
Run Code Online (Sandbox Code Playgroud)

Tim*_*sen 5

使用交叉联接:

SELECT
    t1.UserID, t2.AccountID, t2.PaymentMethod
FROM Users t1
CROSS JOIN Accounts t2
ORDER BY
    t1.UserID, t2.AccountID;
Run Code Online (Sandbox Code Playgroud)

您的预期结果意味着您希望将每个用户与每种类型的帐户相匹配.这是一个笛卡尔积,交叉连接是适合此类型的连接类型.