本文主要是介绍sql 分割字段,并分行,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
- 创建测试表格
CREATE TABLE test (id INT PRIMARY KEY, data VARCHAR(100));
INSERT INTO test VALUES (1, 'A,B,C');
INSERT INTO test VALUES (2, 'D,E,F,G');
- 查询并分割字段
SELECT id, value AS split_data
FROM test CROSS APPLY STRING_SPLIT(data, ',')
WHERE LEN(value) > 0;
- 输出结果
/*
±—±----------+
| id | split_data|
±—±----------+
| 1 | A |
| 1 | B |
| 1 | C |
| 2 | D |
| 2 | E |
| 2 | F |
| 2 | G |
±—±----------+
*/
上述查询首先通过STRING_SPLIT()
函数将原始字段按逗号进行了分割,然后利用CROSS APPLY
关键字将分割得到的值与原始记录相连接,最后再根据需求选取所需的列(这里只选取了ID和分割后的值)。
这篇关于sql 分割字段,并分行的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!