繁体   English   中英

如何加入子查询?

[英]How to join to subquery?

我正在尝试使用可以位于不同位置的 ShortComment 字段中的数字字符串(通常为 6 位)加入 OrderDetails 表。 此编号与 Orders 表中的 ID 字段相关。 我收到以下错误:子查询返回超过 1 个值。 当子查询跟随 =, ,=, <, <=, > 时,这是不允许的。 >= 或当子查询用作表达式时? 有人可以帮忙吗。 谢谢。

Select top 100 op.SKU, 
       OD.DocumentNumber,
       O.*
From  [Orders] O
Join  [OrderProducts] OP on O.ID = OP.Order_id
Join  OrderDetails OD on (
           Select distinct 
                  Left(
                    SubString( 
                              ShortComment, 
                              PatIndex(
                                       '%[0-9.-]%',
                                       ShortComment
                              ), 8000
                    ), 
                    PatIndex(
                              '%[^0-9.-]%', 
                              SubString(
                                        ShortComment, 
                                        PatIndex(
                                                 '%[0-9.-]%', 
                                                 ShortComment
                                        ), 
                                        8000
                               ) + 'X'
                     )-1
                  ) 
           From OrderDetails 
           where CommitDate > '2020-11-03' 
       ) = O.ID

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM