Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL-如何在单词末尾选择具有特定值的单词_Sql_Select - Fatal编程技术网

SQL-如何在单词末尾选择具有特定值的单词

SQL-如何在单词末尾选择具有特定值的单词,sql,select,Sql,Select,我是sql新手,我想知道如何在名为Name的列中找到值末尾的字母或符号? 例如,如果我想找到一些东西,我将从“表”中写入select*,其中的“Name”类似于“%es%”,但它会发现我所有的行都包含es 比如说-lesl、pespe、mess。。。但是如何编写select,它将只选择单词末尾带有'es'的值呢。。。使用regex我将使用es\Z。。。。。提前谢谢 您必须删除最后一个%,因此它将只选择以es结尾的单词 select * from table where Name like '%e

我是sql新手,我想知道如何在名为
Name
的列中找到值末尾的字母或符号? 例如,如果我想找到一些东西,我将从“表”中写入
select*,其中的“Name”类似于“%es%”
,但它会发现我所有的行都包含
es


比如说-
lesl、pespe、mess
。。。但是如何编写select,它将只选择单词末尾带有
'es'
的值呢。。。使用
regex
我将使用
es\Z
。。。。。提前谢谢

您必须删除最后一个
%
,因此它将只选择以
es
结尾的单词

select * from table where Name like '%es'

您当前正在匹配:
。其中的“Name”类似于“%es%”

它等于
任何东西,然后是“es”,然后是任何其他东西

删除最后一个
%
会更改到的位置
然后是“es”的任何内容


简言之。。您需要
。其中像“%es”这样的“Name”查询。..where像“%es”这样的“Name”将查找名称以“es”结尾的列。
但如果我们需要查找名称以“E”或“S”结尾的列,则查询将是

。。其中“Name”类似“%[ES]”

  • 如果您想查找名称,请从类似“test”的内容开始 use=>从表中选择名称,其中的名称类似于“test%”
  • 如果您想查找名称,请以类似“test”的结尾 use=>从表中选择名称,其中的名称类似于“%test”
  • 如果要查找名称,请以s开头,以h结尾 use=>从名称为“s%”和名称为“%h”的表中选择名称,或从名称为“s%h”的表中选择名称
  • 您也可以使用REGEX

    select distinct city from station where city REGEXP '[aeiou]$';
    

    参考资料:

    由于您是新手,在开始实际工作之前,您可能需要学习一些基础知识。为此,我听到了这本书的好消息,在十分钟内自学SQL。谢谢你的想法。我会找到这本书,而且会越来越好:)谢谢你的回答。这很有帮助:)