我希望在SQL中分割一些数据。我们目前在SQL中使用数据库来存储数据。例如以下信息将存储在名为{Script.Details01}的数据库中。
{Script.Details01}
= J Bloggs先生和M博士小姐
我们要做的是验证我们的数据,但是由于其他部门手动输入数据,我们需要通过这两个名称并将它们分成两个不同的数据库。例如{Script.Details02}
和{Script.Details03}.
由于我们需要验证的数据,我们已尝试将它们设置为cols。
"SELECT '{Script.Details01}' as Col1,
'{Script.Details01}' as Col2,
'{Script.Details01}' as Col3"
Col1 Part1 = Item('Col1') Entry(1,'')
无论如何我们可以拆分数据,以便J Bloggs先生进入详细信息02,M博士小姐会进入03吗?我们可以存储输入的数据并将其拉入问题,消息或根据答案要求它沿着某条路线前进。
J Bloggs先生和M博士小姐
{Script.Details02}
{Script.Details03}
P.S。我们不关心“和”,并希望这之间的一切。 如果我感到困惑,任何人都可以随时告诉我,我会尽量更清楚:)
答案 0 :(得分:0)
这是一个可能的解决方案。这不是最简洁,最简洁的编写方式,您需要对其进行修改以使用您的表名,目标列名/数据库等,但它应该为您提供一个良好的起点。请记住,如果您的数据录入人员对于他们输入的名称对不完全一致,那么您将遇到麻烦。您可能需要使用更复杂的技术来清理剩余的信息。
SELECT
LEFT({Script.Details01}, CHARINDEX(' and ', {Script.Details01})) AS FirstName,
RIGHT({Script.Details01}, (CHARINDEX(' and ', {Script.Details01}) + 5)) AS SecondName
FROM MyTable
有关CharIndex以及左右功能的更多信息,请参阅这些文章:
https://docs.microsoft.com/en-us/sql/t-sql/functions/charindex-transact-sql