如何从sql表中找到精确匹配的字符串?

如何从sql表中找到精确匹配的字符串?,sql,sql-server,where-clause,Sql,Sql Server,Where Clause,我有一个表列出了产品名称。我有一些产品,像ZE_QE11_IDS_IDC-P01,ZE_QE19_EIDS_UPA-Z01 我试过了 Select * from products where name like 'ID' 以上列出了所有产品,包括ZE_QE11_IDS_IDC-P01、ZE_QE19_EIDS_UPA-Z01。 我只想列出表中的ID,如何做 希望你得到它 关于在这种情况下,只需与ID no need like子句进行比较即可。当我们必须用某种模式或匹配词搜索单词时,需要Lik

我有一个表列出了产品名称。我有一些产品,像ZE_QE11_IDS_IDC-P01,ZE_QE19_EIDS_UPA-Z01

我试过了

Select *  from products where name like 'ID'
以上列出了所有产品,包括ZE_QE11_IDS_IDC-P01、ZE_QE19_EIDS_UPA-Z01。 我只想列出表中的ID,如何做

希望你得到它


关于

在这种情况下,只需与ID no need like子句进行比较即可。当我们必须用某种模式或匹配词搜索单词时,需要Like子句

Select *  from products where name = 'ID'
有关最新问题:

尝试下面的查询:您必须为要消除的其他字符应用逻辑,如下所示我已为字符E应用了逻辑


您也可以尝试选择@myText,其中@myText类似于“%[[uuux]ID%'如果想要像_idonly not _EID

这样的词,很容易找到精确的匹配:where name='ID'Select*from products where name='ID'在所有这些产品中,你会得到哪种产品?选择name而不是Select*?在浏览了对问题的评论之后,我仍然不清楚上面更新了你的问题,我觉得这应该是公认的答案,如何在从TableName中的select*from select*中使用它,其中columnname如“%[[u]ID%”
DECLARE @myText VARCHAR(50)='ZE_QE11_IDS_IDC-P01'
SELECT @myText where @myText like '%[^E]IDS%'

Output:ZE_QE11_IDS_IDC-P01

DECLARE @myText VARCHAR(50)='ZE_QE11_EIDS_IDC-P01'
SELECT @myText where @myText like '%[^E]IDS%'

Output:
Select *  from products where name = 'ID';