总是对正则表达式脚本感到困惑,特别是我们公司使用雪花平台...为什么不使用 sql server ??????
无论如何,我想返回格式以“_”+数字结尾的表名 例如'销售_123','员工_999999
我尝试了几种格式,但对雪花不起作用...... 请帮助!!
选择表名 来自 INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME LIKE '%^_[0-9]$' ESCAPE '^'
根据我所掌握的知识,我知道^这里是特殊字符,_使其成为真正的字符 最后需要和 escape ^ 一起使用
第二个,$表示值结束。
我可能错了,请让我知道它是如何正确工作的。 常规sql server和snowflake之间的语法有什么区别吗? 我只是想学习...谢谢
根据数据需求和架构选择数据库 Snowflake、SQL Server 和 Postgres - OLTP(事务型)或 OLAP(分析型)。 Snowflake 适合分析需求,Postgres、MySql 和 SQL Server 适合事务需求。就我个人而言,我没有使用过 SQL Server。
您必须使用
rlike
函数进行基于正则表达式的字符串搜索。使用 like
功能 是不可能的
供您参考的文档https://docs.snowflake.com/en/sql-reference/functions/rlike
select distinct table_name from information_schema.tables where rlike(table_name, '\\w+_[0-9]+');
select count(distinct table_name) from information_schema.tables where table_name rlike '\\w+_[0-9]+';