【问题标题】:TRIM based on a condition基于条件的 TRIM
【发布时间】:2023-03-11 18:30:01
【问题描述】:

我有以下声明。我正在尝试使用 CASE 功能删除以“COD -”开头的任何帐户名称前面的“COD -”

SELECT
     DCLink
   , CASE
         WHEN LEFT(Client.Account, 6) = 'COD - ' THEN LTRIM(Client.Account)
         ELSE Client.Account
     END AS CustName
   , Client.Name AS AccName
   , Client.Contact_Person
   , Client.Telephone AS Telephone_1
   , Client.Telephone2 AS Telephone_2
   , Client.Fax1 AS Fax_1
   , Client.Fax2 AS Fax_2
   , Client.Tax_Number AS VATNumber
   , Client.EMail
   , SalesRep.Code
   , SalesRep.Name
   , CONCAT(Client.Physical1, ' ', Client.Physical2, ' ', Client.Physical3, ' ', Client.Physical4, ' ', Client.Physical5, ' ', Client.PhysicalPC) AS CustPhysical
   , CONCAT(Client.Post1, ' ', Client.Post2, ' ', Client.Post3, ' ', Client.Post4, ' ', Client.Post5, ' ', Client.PostPC) AS CustPost
FROM Client
INNER JOIN SalesRep ON SalesRep.idSalesRep = Client.RepID

我觉得我只是在这里错过了一个简单的步骤?

也就是说,数据库中可能有以下两个客户账户名:

  • Wonderful Sweets Ltd
  • COD - Thirsty Beverages Ltd

我想说的是,如果账户名以字符串“COD -”开头,那一定要去掉那部分。

【问题讨论】:

  • REPLACE (Client.Account, 'COD - ', '')
  • LTRIM 仅删除左侧的空格。它不会删除字符。
  • 谢谢!替换工作完美!

标签: sql-server sql-server-2016


【解决方案1】:
SELECT
     DCLink
   , REPLACE(Client.Account,'COD - ','') AS CustName
   , Client.Name AS AccName
   , Client.Contact_Person
   , Client.Telephone AS Telephone_1
   , Client.Telephone2 AS Telephone_2
   , Client.Fax1 AS Fax_1
   , Client.Fax2 AS Fax_2
   , Client.Tax_Number AS VATNumber
   , Client.EMail
   , SalesRep.Code
   , SalesRep.Name
   , CONCAT(Client.Physical1, ' ', Client.Physical2, ' ', Client.Physical3, ' ', Client.Physical4, ' ', Client.Physical5, ' ', Client.PhysicalPC) AS CustPhysical
   , CONCAT(Client.Post1, ' ', Client.Post2, ' ', Client.Post3, ' ', Client.Post4, ' ', Client.Post5, ' ', Client.PostPC) AS CustPost
FROM Client
INNER JOIN SalesRep ON SalesRep.idSalesRep = Client.RepID

【讨论】:

    【解决方案2】:

    使用替换语句将“COD”替换为您想要的任何值。 看看这里:https://msdn.microsoft.com/en-za/library/ms186862.aspx

    【讨论】:

      猜你喜欢
      • 2012-06-29
      • 1970-01-01
      • 2022-10-15
      • 2014-09-20
      • 1970-01-01
      • 2018-10-27
      • 2023-01-11
      • 2013-11-12
      • 2016-01-15
      相关资源
      最近更新 更多