选择所有在给定列中包含'_'的行。

21 浏览
0 Comments

选择所有在给定列中包含'_'的行。

我想要从SQL中选择在某一列中包含\"_\"字符的行。当我尝试运行这个查询时,它返回表中的所有行\nSELECT * FROM [Attribute] WHERE LibID=26 AND Name LIKE \'%_%\'\n但是下面的查询返回了我所需要的结果\nSELECT * FROM [Attribute] WHERE LibID=26 AND CHARINDEX(\'_\', Name) > 0\n为什么我的第一个查询没有返回预期的结果。也许我缺少一些关于SQL的信息/知识。

0
0 Comments

问题的出现原因:

在给定的列中选择所有具有下划线(_)的行的问题,可能是因为需要筛选出具有特定模式的数据。在这种情况下,下划线是一个通配符字符,用于表示任意单个字符。

解决方法:

要解决这个问题,可以使用LIKE查询语句,并使用下划线作为通配符字符。以下是解决方法的示例代码:

SELECT * FROM [Attribute] WHERE LibID=26 AND Name LIKE '%[_]%'

在上述代码中,`SELECT *` 表示选择所有列的数据,`FROM [Attribute]` 表示从名为 "Attribute" 的表中选择数据。`WHERE LibID=26 AND Name LIKE '%[_]%'` 是用于筛选数据的条件语句。其中,`LibID=26` 表示 LibID 列的值为26,`Name LIKE '%[_]%'` 表示 Name 列中包含下划线的任意单个字符。

使用上述代码,可以选择具有下划线的行,并根据需要进行进一步的操作或分析。

0
0 Comments

在给定的列中选择所有具有 "_" 的行的原因是,"_" 字符在 LIKE 函数中用于匹配任意字符。如果要将其用作下划线,需要对其进行转义。

解决方法是在查询中使用转义字符。在上述示例中,我们可以看到在查询中使用了转义字符 "[_]" 来匹配下划线字符。这样,查询将仅返回具有下划线的行。

以下是解决该问题的完整代码示例:

SELECT * 
FROM [Attribute] 
WHERE LibID = 26 
AND Name LIKE '%[_]%'

通过执行上述查询,我们可以获得具有下划线的行的结果集。这种方法可以确保我们只选择具有下划线的行,而不是将下划线用于匹配任意字符。

总结起来,当我们想要选择具有下划线的行时,我们需要在查询中使用转义字符来转义下划线字符,以确保仅返回具有下划线的行。

0