選擇變量(不創(chuàng)建用戶定義的函數(shù)):
SELECT IF(
LOCATE(' ', `membername`) > 0,
SUBSTRING(`membername`, 1, LOCATE(' ', `membername`) - 1),
`membername`
) AS memberfirst,
IF(
LOCATE(' ', `membername`) > 0,
SUBSTRING(`membername`, LOCATE(' ', `membername`) + 1),
NULL
) AS memberlastFROM `user`;
這一辦法還考慮到:
- 成員名
沒有空格的值
:它將首先將整個字符串添加到UMERER中,并將Memberlast設(shè)置為NULL。 - 成員名
具有多個空格的值。
它將第一個空格之前的所有內(nèi)容添加到成員第一,其余的(包括額外的空格)添加到成員最后。
更新版本如下:
UPDATE `user` SET
`memberfirst` = IF(
LOCATE(' ', `membername`) > 0,
SUBSTRING(`membername`, 1, LOCATE(' ', `membername`) - 1),
`membername`
),
`memberlast` = IF(
LOCATE(' ', `membername`) > 0,
SUBSTRING(`membername`, LOCATE(' ', `membername`) + 1),
NULL
);