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

sql
613
2024/9/16 9:31:29
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在 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 等),您需要使用特定于数据库的方法来实现类似的功能。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: sql trim()方法怎样与其他函数结合