标签: sql-like

如何在 PostgreSQL 中使用 ILIKE 运算符在文本中搜索“%”(百分号)

| id | text  |\n|----|-------|\n| 1  | AB    |\n| 2  | CD%EF |\n| 3  | GH    |\n
Run Code Online (Sandbox Code Playgroud)\n

我在表中有一个文本列,其值带有“%”符号。

\n

我想使用以下查询 \xe2\x80\x94 提取该值

\n
SELECT text FORM table\nWHERE text ILIKE '%%%'\n
Run Code Online (Sandbox Code Playgroud)\n

预期输出应该是:

\n
CD%EF\n1 {row}\n
Run Code Online (Sandbox Code Playgroud)\n

实际输出返回:

\n
AB\nCD%EF\nGH\n3 {rows}\n
Run Code Online (Sandbox Code Playgroud)\n

sql string postgresql where-clause sql-like

3
推荐指数
1
解决办法
2447
查看次数

LIKE 子句中的正则表达式仅接受字母数字和破折号

下面是我的 SQL 函数脚本,它将帮助识别字母数字值和破折号 ( -):

CREATE   FUNCTION [dbo].[FN_VALIDATE_ALPHANUMERIC_AND_DASHES](@TX_INPUT VARCHAR(1000))RETURNS BIT AS
BEGIN     
    DECLARE @bitInputVal AS BIT = 0
    DECLARE @InputText VARCHAR(1000)

    SET @InputText = LTRIM(RTRIM(ISNULL(@TX_INPUT,'')))
  
    IF @InputText <> ''
    BEGIN
        SET @bitInputVal = CASE
                                WHEN @InputText LIKE '%[A-Za-z0-9-]%' THEN 1
                                ELSE 0
                            END
    END
  RETURN @bitInputVal
END 
Run Code Online (Sandbox Code Playgroud)

我尝试此查询时遇到问题: SELECT dbo.FN_VALIDATE_CLAIMANT_REF_NO('AbcdefgH-1234*')它给出的结果是,1尽管该字符*未包含在正则表达式中,但应该返回0

我想要实现的是显式验证字符串是否仅包含字母数字 (字母和数字)破折号

请注意,字符长度没有限制,仅检查字符串是否由字母数字和破折号组成。

sql t-sql sql-server sql-like

3
推荐指数
1
解决办法
1467
查看次数

对不同表中的列中的值使用 ILIKE ANY

有一个电子邮件域列表,并且想要标记“免费”(如果该域类似于免费域),这对我来说适用于硬编码列表,如下所示:

CASE WHEN lower(email_domain) ilike any ('%%gmail%%','%%yahoo%%', '%%hotmail%%') THEN 'free' else 'business' end
Run Code Online (Sandbox Code Playgroud)

但我真正想做的是从不同表中的列中获取免费域列表,如下所示:

| SUBSTRING_VALUE   |
|:------------------|
| "gmail"           |
| "hotmail"         |
| "yahoo"           |
Run Code Online (Sandbox Code Playgroud)

我尝试过使用带有 listagg 或 arrayagg 的子查询,但它不起作用,有什么方法可以做到这一点?

sql-like snowflake-cloud-data-platform

3
推荐指数
1
解决办法
1264
查看次数

SQL"LIKE"复杂性

有谁知道LIKE最流行的数据库的SQL 运算符的复杂性是什么?

sql database complexity-theory sql-like

2
推荐指数
1
解决办法
1323
查看次数

用于Progress DB SQL的LIKE运算符

我正在尝试在Progress SQL中做这样的事情(这不是POSTGRES!)

SELECT
    CASE WHEN code LIKE '%foo%' THEN 'Y' ELSE 'N' END as foo
FROM
    bar
Run Code Online (Sandbox Code Playgroud)

但是Progress不支持LIKE运算符.INSTR看起来它可能会完成这项工作,但它是一个Progress扩展,我正在使用的数据库不支持.是否有另一种使用标准ODBC函数实现此目的的方法?

谢谢

sql progress-db case-statement openedge sql-like

2
推荐指数
1
解决办法
1万
查看次数

linq喜欢空字符串

var list = (from i in _dataContext.aspnet_Users.Include("aspnet_Membership")  where i.UserName.Contains(userName)  select i ).ToList();
Run Code Online (Sandbox Code Playgroud)

如果userName=""那么没有回报.如果空字符串然后返回所有记录,我怎么能这样做?

linq contains sql-like

2
推荐指数
1
解决办法
1633
查看次数

在Oracle中使用Decode作为类似语句

我需要写一个像这样的sql语句:

 SELECT id_segmento AS Segmento, Decode (id_segmento ,  '1' , 'a', 'b' )

 FROM mapchile.segmento
Run Code Online (Sandbox Code Playgroud)

但是在这种情况下,当id_segmento等于'1'时,我将获得'a',即使字符串id_Segmento包含'1',我也需要它为'a',类似于类似的声明.

还有像Decode这样的其他命令吗?

谢谢.

oracle decode sql-like

2
推荐指数
2
解决办法
3万
查看次数

带有特殊字符的SQL查询 - 如何处理?

我的名字很少

  1. 约翰,1
  2. 鬼才
  3. 玉米

这样的事情

现在,当我正在搜索我正在使用的这些名字时

select * from emp where empname like ('john,1,devil's,corn')
Run Code Online (Sandbox Code Playgroud)

但我没有得到预期的值,我也得到错误,因为emp名称包含特殊的字符,如'和'.

有人可以帮我解决这个问题吗?

sql sql-server-2005 sql-like

2
推荐指数
1
解决办法
5万
查看次数

如何在"\ detail1\detail2 \"上应用SQL(转义'\')?

我有一个T1带有列的表details,数据列有以下示例数据:

select details from T1;

\this is detail 1\this is detail2\
\this is detail 1\this is detail2\
:this is detail 1:this is detail2:
:this is detail 1:this is detail2:
\this is detail 1\this is detail2\
Run Code Online (Sandbox Code Playgroud)

我想只获取那些details被分隔的\.

为此,我写了以下查询:

select details from T1 where details like '\%\%\';
Run Code Online (Sandbox Code Playgroud)

但它没有像预期的那样回应,因为它作为逃脱校正器.

所以,它显示错误的不完整单倒(')!

那么,怎么做呢?

mysql sql sql-like

2
推荐指数
1
解决办法
6767
查看次数

MySQL中的方括号LIKE

我有一个表(我们称之为A),其中一个文本字段被调用references_int,其中包含许多值.一个例子是'internal\reference[111]'.

如果我做

SELECT * 
FROM A 
WHERE references_int LIKE 'internal\\reference[111]'
Run Code Online (Sandbox Code Playgroud)

它将返回零行.但是,如果我更换LIKE=它的工作原理.

我使用一个简化查找查询的框架,但它使用LIKE..有没有办法让它工作?

不知道这是一个错误还是一个功能.

谢谢!

mysql sql sql-like

2
推荐指数
1
解决办法
1166
查看次数