有条件地编辑SQL查询中的输出

时间:2015-07-16 16:07:39

标签: sql-server-2014-express

我正在尝试从我称为供应商的表中的列中提取数据,列名称为VendorContactLName。我还有一个VendorContactFName列。我正在尝试这样做,因为我拉数据,它有条件地改变了字符串的输出。

例如,我想添加一个撇号s<'s>到我能用的名字的末尾:

SELECT VendorContactFName + ' ' + VendorContactLName + '''s' AS 'Vendor Full Name' FROM Vendors;

但是,我想这样做,如果恰好是VendorContactLName中的姓氏已经以“s”结尾,我只将撇号连接到它,而不是撇号和's'。 / p>

所以,我想:Karl Allen,Michael Dunlap和Michelle Higgins将出演Karl Allen's,Michael Dunlap和Michelle Higgins。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

检查一下:

SELECT VendorContactFName + ' ' +
 (case right(VendorContactLName,1) 
  when 's' then VendorContactLName + ''''
  else VendorContactLName + '''s' 
  end) as 'Vendor Full Name'
 FROM Vendors

demo here