查询以查找字符串中所有字符的出现

时间:2017-08-24 12:11:08

标签: mysql sql

我有列employeeid和employeename

<ul>
  <li>1</li>
  <li>2</li>
  <li>3</li>
  <li>4</li>
  <li>5</li>
  <li>6</li>
  <li>7</li>
  <li>8</li>
</ul>

我需要o / p作为

ID   Name
1    Empee1
2    Emp1

1 个答案:

答案 0 :(得分:2)

我不确定是否有一个很好的&#39;这样做的方法,但以下将给你你的结果:

SELECT 
  CASE WHEN [NAME] LIKE '%A%' THEN 'A - ' + CONVERT (VARCHAR, LEN([NAME]) - LEN( REPLACE ([NAME], 'A', '')))
  ELSE '' END,
  CASE WHEN [NAME] LIKE '%B%' THEN ' B - ' + CONVERT ( VARCHAR, LEN([NAME]) - LEN( REPLACE ([NAME], 'B', '')))
  ELSE '' END,
  ...
  ...
  CASE WHEN [NAME] LIKE '%Z%' THEN ' Z - ' + CONVERT (VARCHAR, LEN([NAME]) - LEN( REPLACE ([NAME], 'Z', '')))
  ELSE '' END,
  CASE WHEN [NAME] LIKE '%0%' THEN ' 0 - ' + CONVERT (VARCHAR, LEN([NAME]) - LEN( REPLACE ([NAME], '0', '')))
  ELSE '' END,
  ...
  ...
  CASE WHEN [NAME] LIKE '%9%' THEN ' 9 - ' + CONVERT (VARCHAR, LEN([NAME]) - LEN( REPLACE ([NAME], '9', '')))
  ELSE '' END
FORM [Your TABLE name];