我有一张桌子,比如A,其中有一列FULLNAME。此列下存储的值的格式为“姓氏中间名”(每个之间有一个空格)。我还有另一个表B,其中有SURNAME、NAME和MIDDLENAME列。从表A中获取所有FULLNAME单元格的最佳方法是什么,相应地拆分它们并将它们插入表B中?
谢谢
我有一张桌子,比如A,其中有一列FULLNAME。此列下存储的值的格式为“姓氏中间名”(每个之间有一个空格)。我还有另一个表B,其中有SURNAME、NAME和MIDDLENAME列。从表A中获取所有FULLNAME单元格的最佳方法是什么,相应地拆分它们并将它们插入表B中?
谢谢
您可以将用于搜索字符串中出现的函数(通常返回其索引)与 Substring 函数结合使用,此外您还需要 Left 和 Right 函数
例如,在 SQL Server 中,您会发现以下函数:
CHARINDEX ( expressionToFind ,expressionToSearch [ , start_location ] )
脚步:
请注意,如果您有任何名称,包括中间的空格(例如像 anna maria 这样的名字),这将不会按预期工作。
此查询将溢出您的字符串。
select left(FULLNAME,CHARINDEX(' ',FULLNAME)), SUBSTRING(FULLNAME,CHARINDEX(' ',name)+1,len(FULLNAME)) from tableA