CREATE TABLE `users` (
`id` int(11) AUTO_INCREMENT,
`academicdegree` varchar(255),
`name` varchar(255),
`firstname` varchar(255),
`sex` enum('m','f')
)
Run Code Online (Sandbox Code Playgroud)
SELECT TRIM(CONCAT_WS(" ", firstname, name)) AS fullname FROM users
Run Code Online (Sandbox Code Playgroud)
有没有一种方法可以根据ENUM一次查询中“性别”字段中存储的值添加有用的称呼(先生或夫人)?
奖励曲目:
我只能替换这部分查询:TRIM(CONCAT_WS(" ", firstname, name))并且;是不允许的。
这会工作得很好:
SELECT TRIM(CONCAT_WS(" ", IF(sex='m', 'Mr.', 'Mrs.'), firstname, name)) AS fullname FROM users
Run Code Online (Sandbox Code Playgroud)
您可以使用CASE声明,但是如果您只有两个选项,则IF()声明更有意义。