1

我有一个用于搜索功能的 SQL 查询(如下所示)

SELECT t.op_id, t.op_desc FROM operator
WHERE UPPER(t.op_id) LIKE UPPER(?);

当我的网页第一次加载时,它只是返回表中的每个运算符。

数据库中有一些条目,其操作员 id (t.op_id) 包含一些空格“操作员 A”。有什么方法可以更改此查询,以便排除运算符名称中包含空格的结果?

4

4 回答 4

4

要忽略空格,您可以尝试

WHERE NOT LIKE '% %'

这将执行相同的操作INSTR

于 2013-07-03T14:43:45.110 回答
1

你可以试试这个:

SELECT t.op_id, t.op_desc FROM operator
WHERE t_op_id not like '% %'
于 2013-07-03T14:45:04.957 回答
1

您可以使用该trim功能。我假设您的运营商名称列是op_name. 请尝试以下方法:

SELECT t.op_id, t.op_desc FROM operator
WHERE UPPER(t.op_id) LIKE UPPER(?) and instr(trim(t.op_name), ' ') <= 0;
于 2013-07-03T14:46:02.447 回答
1

你也可以试试:

where INSTR(t_op_id,' ') <= 0
于 2013-07-03T14:46:25.040 回答