如何使用Sql查询从数据行中获取完全匹配

时间:2018-11-24 09:02:09

标签: c# sql datarow

你好我的数据行(ID)为

  1. 12?15?6?11?51?

  2. 1?15?6?11?51?

我想搜索等于1(id)的数字。为此我用

  1. %1%,这将返回匹配结果作为两行

  2. %1?%这将返回匹配结果作为两行

  3. %?1?%这将返回匹配结果为空

  4. %?1%,这将同时返回两行匹配结果

结果应为ID 1仅第二行。 请为此提供适当的查询。 谢谢。

3 个答案:

答案 0 :(得分:1)

SELECT * FROM TableName WHERE ID LIKE '1?%' OR ID LIKE '%?1?%' 

答案 1 :(得分:0)

SELECT * FROM TABLE WHERE ID LIKE '1?_%' ; 如果您包含以1开头的话,这将起作用。

答案 2 :(得分:0)

您可以使用

CREATE TABLE T(
  ID VARCHAR(45)
);

INSERT INTO T VALUES
('12?15?6?11?51?'),
('1?15?6?11?51? &');

SELECT *
FROM T
WHERE ID LIKE '[1][^0-9]%';

返回:

+-----------------+
|       ID        |
+-----------------+
| 1?15?6?11?51? & |
+-----------------+

Demo