gpt4 book ai didi

sql - 在某个字符 SQL 之后动态提取字符串

转载 作者:搜寻专家 更新时间:2023-10-30 22:06:10 28 4
gpt4 key购买 nike

我想从一个/任何符号后的列中提取某个短语。例如,如果我想从 SQL-Tutorial 中提取 Tutorial,下面的查询就足够了。

SELECT SUBSTRING('SQL-Tutorial', 5, 8) AS ExtractString;

如果我想从列中的以下字段中提取“-”或“_”之前或之后的所有内容怎么办?

  • SQL 教程
  • Oracle 教程
  • IBM DB2 教程
  • Sybase ASE 教程
  • PostgreSQL 教程
  • MariaDB 教程
  • MySQL 教程
  • Teradata 教程
  • IBM Informix 教程
  • Amazon SimpleDB 教程

最佳答案

CREATE TABLE #Table1
([COLN] varchar(24))
;

INSERT INTO #Table1
([COLN])
VALUES
('SQL-Tutorial'),
('Oracle-Tutorial'),
('IBM DB2-Tutorial'),
('Sybase ASE-Tutorial'),
('PostgreSQL-Tutorial'),
('MariaDB-Tutorial'),
('MySQL-Tutorial'),
('Teradata-Tutorial'),
('IBM Informix-Tutorial'),
('Amazon SimpleDB-Tutorial')
;
SELECT PARSENAME(REPLACE(coln,'-','.'),2) [before],
PARSENAME(REPLACE(coln,'-','.'),1) [after] from #Table1

输出

before           after
SQL Tutorial
Oracle Tutorial
IBM DB2 Tutorial
Sybase ASE Tutorial
PostgreSQL Tutorial
MariaDB Tutorial
MySQL Tutorial
Teradata Tutorial
IBM Informix Tutorial
Amazon SimpleDB Tutorial

关于sql - 在某个字符 SQL 之后动态提取字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53076352/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com