我在CodeWars(instructions here)中正在执行SQL问题,这一部分让我感到困惑:
为帮助抄写员,请返回 firstname 和 lastname 列 由空格分隔成一个 shortlist 列, 并大写每个名字的首字母。
“入围列表”是什么意思?我以为这意味着返回单列,但我得到了error about it.
这是我尝试过的:
SELECT INITCAP(firstname) || ' ' || INITCAP(lastname)
FROM Elves
WHERE firstname LIKE '%tegil%' OR lastname LIKE '%*%'
如果有人可以阐明情况,那就太好了。谢谢!
答案 0 :(得分:1)
SELECT CONCAT(INITCAP(firstname)," ",INITCAP(lastname)) AS shortlist FROM Elves WHERE firstname LIKE '%tegil%' OR lastname LIKE '%astar%';
答案 1 :(得分:0)
根据INITCAP
的定义:
INITCAP返回char,每个单词的首字母大写, 所有其他小写字母
因此您可以将INITCAP()应用于串联名称:
SELECT INITCAP(firstname || ' ' || lastname) as shortlist
FROM Elves
WHERE firstname LIKE '%tegil%' OR lastname LIKE '%astar%'
您误解了姓氏的要求:姓氏必须包含的不是星星,而是 astar 。