Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在SQL Server中分离触发器上的字符串_Sql_Sql Server_Triggers - Fatal编程技术网

如何在SQL Server中分离触发器上的字符串

如何在SQL Server中分离触发器上的字符串,sql,sql-server,triggers,Sql,Sql Server,Triggers,我有一个问题,如果我有这样的数据: 1. 2|7000|0001|Werk 0001 Standort 0001|0 2. 16|701A|0101109|KANTOR-R. DAPUR LT.1|0 3. 401|701H|03PLNT2|PABRIK-GEDUNG PLANT LT.2|0 4. 10272|B100|0109000|AUNG THEIK DI|161794|0 1. 2 2. 16 3. 401 4. 10272 我想像这样分开第一个int: 1. 2|7000|00

我有一个问题,如果我有这样的数据:

1. 2|7000|0001|Werk 0001 Standort 0001|0
2. 16|701A|0101109|KANTOR-R. DAPUR LT.1|0
3. 401|701H|03PLNT2|PABRIK-GEDUNG PLANT LT.2|0 
4. 10272|B100|0109000|AUNG THEIK DI|161794|0
1. 2
2. 16
3. 401
4. 10272
我想像这样分开第一个int:

1. 2|7000|0001|Werk 0001 Standort 0001|0
2. 16|701A|0101109|KANTOR-R. DAPUR LT.1|0
3. 401|701H|03PLNT2|PABRIK-GEDUNG PLANT LT.2|0 
4. 10272|B100|0109000|AUNG THEIK DI|161794|0
1. 2
2. 16
3. 401
4. 10272

我已经在使用一个
子字符串,但问题是,第一个int中的位数不是固定的,所以我不能使用它,所以我想问一下,在我插入数据库(在触发器中分隔)之前,如何将第一个符号与
|
分开您可以使用
charindex()


您可以使用
charindex()

戈登的答案(+1)可能就是解决这个问题的方法。但如果您使用的是SQL Server 2016或更高版本,则还有另一个选项:

SELECT
    (SELECT TOP 1 value FROM STRING_SPLIT(col, '|')) AS first_part
FROM yourTable;

戈登的答案(+1)可能就是解决这个问题的方法。但如果您使用的是SQL Server 2016或更高版本,则还有另一个选项:

SELECT
    (SELECT TOP 1 value FROM STRING_SPLIT(col, '|')) AS first_part
FROM yourTable;

可能重复的可能重复的