Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 连接其他表时从其他表中获取1个以上的数据_Sql_Sql Server_Join_Inner Join - Fatal编程技术网

Sql 连接其他表时从其他表中获取1个以上的数据

Sql 连接其他表时从其他表中获取1个以上的数据,sql,sql-server,join,inner-join,Sql,Sql Server,Join,Inner Join,我认为该查询的屏幕截图几乎是不言自明的 我需要的只是从CustomerAddresses表中获取2个地址,而不是像本例中那样仅获取1个地址1表示发货地址,另一个表示帐单地址。 听起来解决这个问题很容易,但显然我遗漏了一些东西。提前感谢。您需要两次加入包含地址的表。一次用于ShippingAddressID,一次用于BillingAddressID: SELECT ... ShippingAddress.Address as 'ShippingAddress', Billi

我认为该查询的屏幕截图几乎是不言自明的

我需要的只是从CustomerAddresses表中获取2个地址,而不是像本例中那样仅获取1个地址1表示发货地址,另一个表示帐单地址。


听起来解决这个问题很容易,但显然我遗漏了一些东西。提前感谢。

您需要两次加入包含地址的表。一次用于
ShippingAddressID
,一次用于
BillingAddressID

SELECT
    ...
    ShippingAddress.Address as 'ShippingAddress',
    BillingAddress.Address as 'BillingAddress',
    ...
FROM
    ...
    INNER JOIN CustomerAddresses as ShippingAddress
      ON Orders.ShippingAddressID = ShippingAddress.CustomerAddressID
    INNER JOIN CustomerAddresses as BillingAddress
      ON Orders.BillingAddressID = BillingAddress.CustomerAddressID