代码之家  ›  专栏  ›  技术社区  ›  Tsardines

这个问题需要一个“短名单栏”,我有一个错误

sql
  •  0
  • Tsardines  · 技术社区  · 6 年前

    我在代码战中做一个sql问题( instructions here )我被这部分弄糊涂了:

    为了帮助抄写员,把 名字 姓氏 柱 连在一起,用空格隔开,变成一个 入围名单 列, 把每个名字的第一个字母大写。

    “入围栏”是什么意思?我以为这意味着要返回一个专栏,但我得到了一个 error about it.

    我试过的是:

    SELECT INITCAP(firstname) || ' ' || INITCAP(lastname)
    
    FROM Elves
    
    WHERE firstname LIKE '%tegil%' OR lastname LIKE '%*%'
    

    如果有人能了解情况,那就太好了。谢谢!

    2 回复  |  直到 6 年前
        1
  •  1
  •   ChrisFNZ    6 年前
    SELECT CONCAT(INITCAP(firstname)," ",INITCAP(lastname)) AS shortlist FROM Elves WHERE firstname LIKE '%tegil%' OR lastname LIKE '%astar%';
    
        2
  •  0
  •   forpas    6 年前

    从定义 INITCAP :

    initcap返回char,每个单词的第一个字母大写, 所有其他小写字母

    因此可以将initcap()应用于连接的名称:

    SELECT INITCAP(firstname || ' ' || lastname) as shortlist
    FROM Elves
    WHERE firstname LIKE '%tegil%' OR lastname LIKE '%astar%'
    

    你误解了姓氏的要求:不是 明星 但是 阿斯塔 姓氏必须包含。