在PHP中,我需要更改此数据
FirstName | MiddleName | LastName
---------------------------------
Robert | Thomas | Smith
Run Code Online (Sandbox Code Playgroud)
进入字符串"史密斯,罗伯特托马斯"
我不确定我是否需要使用join
,concat
或concat_ws
.
我知道,如果我使用
concat_ws(', ',LastName,FirstName,MiddleName)
Run Code Online (Sandbox Code Playgroud)
然后我得到"史密斯,罗伯特,托马斯",但我需要"史密斯,罗伯特托马斯".
有什么建议?
Pre*_*tic 23
我意识到这是一个死灵,但值得注意以下几点:
但是,最值得注意的区别是,CONCAT
在任何输入为NULL的情况下,可能无法返回您期望的结果.在这些情况下,CONCAT
将返回NULL,而CONCAT_WS
将跳过NULL值,并仍返回包含其余输入结果的字符串.这意味着在大多数情况下您可能想要使用CONCAT_WS
.
以下是等效的,除非一个或多个输入为NULL:
// Result: LastName, FirstName, MiddleName
CONCAT( LastName, ', ', FirstName, ', ', MiddleName )
// Result: LastName, FirstName, MiddleName
CONCAT_WS( ', ', LastName, FirstName, MiddleName )
Run Code Online (Sandbox Code Playgroud)
如果您想使用CONCAT_WS
不同的'分隔符',只需将第一个输入设置为空字符串:
// Result: LastName, FirstName (MiddleName)
CONCAT_WS( '', LastName, ', ', FirstName, ' (', MiddleName, ')' )
Run Code Online (Sandbox Code Playgroud)
然后就用吧
CONCAT(LastName, ', ', FirstnName, ' ', MiddleName)
Run Code Online (Sandbox Code Playgroud)
CONCAT_WS用于仅与一个分隔符连接,而CONCAT以任何您想要的方式将字符串附加在一起.
归档时间: |
|
查看次数: |
11556 次 |
最近记录: |