问题:找出资本和国家名称延伸的名称。 请注意,资本必须长于名称(墨西哥城与卢森堡相比) 这是我的工作,但它不正确
SELECT name , capital
FROM world
WHERE capital LIKE concat(name, '%')
答案 0 :(得分:1)
要获得扩展程序,您可以使用REPLACE函数,该函数在以下查询中替换' name'来自'资本'的国家为空。
SELECT name , REPLACE(capital,name,'')
FROM world
WHERE capital LIKE concat(name, '_%');
答案 1 :(得分:1)
SELECT capital, name
FROM world
WHERE capital LIKE concat(name, '%') or capital LIKE concat(name, ' %')
纠正^ _ ^
答案 2 :(得分:1)
select name,capital
from world
where capital like concat(name,'%') and capital <> name;
输出:
name capital
Andorra Andorra la Vella
Guatemala Guatemala City
Kuwait Kuwait City
Mexico Mexico City
Monaco Monaco-Ville
Panama Panama City
答案 3 :(得分:0)
LEN()
函数返回文本字段中值的长度。
SELECT name , capital
FROM world
WHERE capital LIKE concat(name, '%')
AND LEN(Capital) > LEN(name)
答案 4 :(得分:0)
试试这个。这对我有用。
SELECT name, capital
FROM world
WHERE capital LIKE concat(name, '%') AND capital <> name;
答案 5 :(得分:0)
SELECT capital, name
FROM world
WHERE capital LIKE concat('%',name, '%')
这是编写代码最具包容性的方法。
可以写得更简洁SELECT capital, name
FROM world
WHERE capital LIKE concat(name, '%')
资本名称的情况是该国家始终排在第一位,例如:墨西哥城而不是墨西哥城 - 至少用英语。
答案 6 :(得分:0)
SELECT name, capital
FROM world
WHERE capital LIKE concat('%', name, '%')
AND LENGTH(capital) > LENGTH(name)
答案 7 :(得分:0)
SELECT capital, name
FROM world
WHERE capital LIKE CONCAT(name, '%')
AND name != capital
答案 8 :(得分:0)
SELECT name
FROM world
WHERE capital LIKE concat(name, ' city')