我了解LIKE运算符,但是对于我想做的事情,我需要将列交换为无效的值。
我在与表连接到数据库的discord bot中使用了此功能。该表有两列,关键字和响应。我需要一个查询,当给定的字符串包含关键字时,它可以给我响应。
SELECT response FROM Reply WHERE (insert something here to see if provided string
contains table value)
答案 0 :(得分:1)
使用SQL
标记表示您的问题与标准SQL有关(将鼠标悬停在标记上并读取它)。
不能将LIKE用于您的目的,因为该标准对您可以指定的内容非常明确:
<character like predicate> ::=
<row value predicand> <character like predicate part 2>
<character like predicate part 2> ::=
[ NOT ] LIKE <character pattern> [ ESCAPE <escape character> ]
因此,您无法WHERE 'myliteral' LIKE colname
。
因此,您需要一个标量函数,但是我不知道标准中定义的可用于此目的的任何标量函数。
因此,您只能使用特定DBMS提供的标量函数。例如。在DB2中,有POSSTR(source_string,search_string)可以用作POSSTR('myliteral',colname)。
答案 1 :(得分:0)
.example-tree-invisible {
display: none;
}
.example-tree ul,
.example-tree li {
margin-top: 0;
margin-bottom: 0;
list-style-type: none;
}
.example-tree li {
margin-left: 25px;
}
.fa {
margin:5px;
}
.fa-trash{
color: red;
}
.mat-tree-node {
display: flex;
align-items: center;
min-height: 0px;
flex: 1;
overflow: hidden;
word-wrap: break-word;
}
.paragraphMargingLeft{
margin-left: 46px;
}
以这种方式使用的PS CONCAT可在SQLSERVER上检查您所使用的dbms的对应关系,并且top1在找到第一个关键字后也会停止查询