黑斑羚中的星号或百分比符号

Posted

技术标签:

【中文标题】黑斑羚中的星号或百分比符号【英文标题】:asterisk or percentage sign in impala 【发布时间】:2018-06-04 10:48:51 【问题描述】:

百分号 (%) 用作“所有”通配符,而不是星号。它将匹配零个或多个字符。

正如@onedaywhen 所说,两者功能相同。

但在 impala 中,我发现它们只在不同的特定情况下工作。

显示类似''的表格

假设在我的数据库opd,有表,

opd.haha opd.haha1 opd.abc

输入:

show tables like 'haha*'

输出:

opd.haha
opd.haha1

输入:

show tables like 'haha%'

输出:

Done. 0 results.

选择...喜欢

select 'haha' like 'ha%' -- true
select 'haha' like 'ha*' -- false
select 'haha' like 'ha__' -- true
select 'haha' like 'haha%' -- true

我的问题是

总结一下,

星号仅适用于 show tables 子句,并且 百分号仅在选择子句中有效

这个评论对吗?

【问题讨论】:

与节目一起使用的类似使用unix style,因此使用*。而标准 SQL 中使用的类似使用 %。有点像,但又不一样。 我发现* 仅适用于 show 语句。谢谢。 嗯,可能是这样,因为SHOW 似乎不是标准 SQL。但他们需要包含一个管道| (OR)。在 SQL 中,LIKE 的语法没有 OR 字符。此外,根据文档,SHOW 之后的 LIKE 词是可选的。 是的,在whereselect语句中,OR运算就像var like 'A' or var like 'B' 而不是var like 'A|B' 【参考方案1】:

like 的标准通配符是:

_ 代表单个字符 % 代表零个或多个字符

like 没有实现正则表达式。

如果你想要正则表达式,那么使用regexp_like()

【讨论】:

以上是关于黑斑羚中的星号或百分比符号的主要内容,如果未能解决你的问题,请参考以下文章

通配符百分号表示啥意思

更新表 |黑斑羚 | SQL | Hadoop

select 通配符 星号 百分号 的区别??

Twitter Bootstrap 在 CSS 中使用星号宽度属性

华丽老肌肉 - 1961年雪佛兰 Impala黑斑羚

我们所做的一切,只为您而改变:2014 Chevrolet Impala 黑斑羚 深度解析