【问题标题】:Concatenating 2 columns in the same table连接同一个表中的 2 列
【发布时间】:2019-08-02 07:34:23
【问题描述】:

在下面的尝试中,我试图连接同一个表中的两列,当我尝试运行它时,它显示“参数数量无效”。

 SELECT  Concat(b.OB,',',C.OB) AS LANE 
  ,(
    CASE
            WHEN a.vehicle_class LIKE '601%'
            THEN 'Small'
            WHEN a.vehicle_class LIKE '602%'
            THEN 'Large'
            WHEN a.vehicle_class LIKE '9%'
            THEN 'TOW'
            ELSE 'ERROR'
    END) AS vehicle_size
    , a.*
FROM
    (SELECT *
    FROM    reserved

    ) a
  , location b
  , location c
  , mre_system_parameters SYS
WHERE   b.ob_location_id = a.ob_location_id
AND c.ob_location_id = a.ib_location_id
AND rental_date      > sys.cpd - 20000
AND rental_date     <= sys.cpd
AND a.vehicle_class  LIKE '6%'
AND booking_count    = 1;

COMMIT;

【问题讨论】:

    标签: sql string oracle concat


    【解决方案1】:

    Oracle 的concat 严格采用两个参数,而不是您在查询中使用的三个参数。您可以只使用一系列连接运算符 (||):

    b.OB || ',' || C.OB AS LANE 
    

    【讨论】:

      【解决方案2】:

      在 oracle 中,使用|| 运算符进行连接更方便。因此,

      b.OB || ',' || C.O 
      

      【讨论】:

        猜你喜欢
        • 2013-10-20
        • 1970-01-01
        • 2020-08-25
        • 2021-11-02
        • 1970-01-01
        • 1970-01-01
        • 2011-11-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多