Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.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 选择中的左联接子查询_Sql_Sql Server_Left Join - Fatal编程技术网

Sql 选择中的左联接子查询

Sql 选择中的左联接子查询,sql,sql-server,left-join,Sql,Sql Server,Left Join,我在中练习SQL,下面的代码是 错误的结果,因为我要从Customers表中加入的customer name 即使customerid不同,也要生成重复名称 SELECT orders.OrderDate ,orders.OrderID ,orders.CustomerID , (select customers.CustomerName from Orders Left join Customers on Orders.CustomerID = Custome

我在中练习SQL,下面的代码是 错误的结果,因为我要从Customers表中加入的customer name 即使customerid不同,也要生成重复名称

SELECT orders.OrderDate
      ,orders.OrderID   ,orders.CustomerID 
       , (select customers.CustomerName 
from Orders
Left join Customers
on Orders.CustomerID = Customers.CustomerID) as customername
FROM Orders
先谢谢你

我认为你根本不需要左撇子加入。订单是否存在而没有客户?如果是,您需要左键连接。如果否,则需要内部联接,如下所示:

SELECT orders.OrderDate
      ,orders.OrderID   
      ,orders.CustomerID 
      ,customers.CustomerName
 FROM Orders
 Left join Customers on Orders.CustomerID = Customers.CustomerID
我认为你根本不需要左撇子加入。订单是否存在而没有客户?如果是,您需要左键连接。如果否,则需要内部联接,如下所示:

SELECT orders.OrderDate
      ,orders.OrderID   
      ,orders.CustomerID 
      ,customers.CustomerName
 FROM Orders
 Left join Customers on Orders.CustomerID = Customers.CustomerID

你在两个地方下订单。这是不必要的。简单的左外联接或简单的子查询就可以了

选择orders.OrderDate ,orders.OrderID,orders.CustomerID ,选择customers.CustomerName 来自客户 其中Customers.CustomerID=Orders.CustomerID作为customername 从命令 或

选择orders.OrderDate ,orders.OrderID ,orders.CustomerID ,customers.CustomerName 从命令 左外接客户 ON Customers.CustomerID=Orders.CustomerID
你在两个地方下订单。这是不必要的。简单的左外联接或简单的子查询就可以了

选择orders.OrderDate ,orders.OrderID,orders.CustomerID ,选择customers.CustomerName 来自客户 其中Customers.CustomerID=Orders.CustomerID作为customername 从命令 或

选择orders.OrderDate ,orders.OrderID ,orders.CustomerID ,customers.CustomerName 从命令 左外接客户 ON Customers.CustomerID=Orders.CustomerID
您需要使用子查询的任何特定原因?您只需执行Orders内部联接Customers即可从子查询中删除Orders表。您不需要将子查询与外部查询关联起来。而且你的帖子是可疑的,因为你的子查询应该产生多行,这会产生一个错误。您确定这是生成所显示结果的实际查询吗?您需要使用子查询的具体原因是什么?您只需执行Orders内部联接Customers即可从子查询中删除Orders表。您不需要将子查询与外部查询关联起来。而且你的帖子是可疑的,因为你的子查询应该产生多行,这会产生一个错误。您确定这是生成所显示结果的实际查询吗?