sql

如何在sql中使用explode函数分割字符串

小樊
83
2024-09-16 07:43:17
栏目: 云计算

在 SQL 中,没有内置的 explode 函数

SELECT
    id,
    value
FROM
    your_table
CROSS APPLY
    STRING_SPLIT(your_column, ',') AS ss(value);

这里是一个完整的示例:

-- 创建一个包含逗号分隔值的表
CREATE TABLE test_table (
    id INT PRIMARY KEY,
    csv_values VARCHAR(255)
);

-- 插入一些数据
INSERT INTO test_table (id, csv_values) VALUES (1, 'apple,banana,orange');
INSERT INTO test_table (id, csv_values) VALUES (2, 'car,boat,plane');

-- 使用 STRING_SPLIT 和 CROSS APPLY 查询分隔后的值
SELECT
    id,
    value
FROM
    test_table
CROSS APPLY
    STRING_SPLIT(csv_values, ',') AS ss(value);

结果将显示分隔后的值:

id | value
---------
1  | apple
1  | banana
1  | orange
2  | car
2  | boat
2  | plane

请注意,STRING_SPLIT 函数仅在 SQL Server 2016 及更高版本中可用。对于其他数据库(如 MySQL、PostgreSQL 等),您需要使用特定于数据库的方法来实现类似的功能。

0
看了该问题的人还看了