如何为客户编写此SQL查询?

时间:2019-05-24 19:22:02

标签: mysql sql

编写查询以打印客户 id 名字姓氏,其组合名称长度为名字姓氏的长度总和小于12。idname应当按名字组合长度的升序打印。如果两个或两个以上的客户具有相同的组合名称长度,请按全名的字典顺序对结果进行排序。如果两个或多个客户具有相同的全名,请按 ID asc 排序结果。

Select ID , FIRST_NAME , LAST_NAME 
from CUSTOMER 
where length(first_name) + length(last_name) < 12 
order by length(first_name) + length(last_name) 

dnt knwo如何应用字典顺序

示例输出:-

  

9乔·加尔扎
  10安妮·哈里斯
  4露丝·汉森
  5 Puala Fuller

样本数据

  

id first_name last_name
  1法郎白
  2卡罗琳·布拉德利
  3安妮·费尔南德斯
  4露丝·汉索森

1 个答案:

答案 0 :(得分:-1)

这应该有效

Select ID , first_name, last_name 
from 
   (select FIRST_NAME,
           LAST_NAME,
           length(Concat(FIRST_NAME, LAST_NAME)) len, 
           Concat(FIRST_NAME, ' ', LAST_NAME) fullname),
           id
     from CUSTOMER) c
 where len < 12 
 order by len, fullname, id