用SUBSTR替换LIKE

时间:2017-01-27 15:52:58

标签: sql

我尝试选择以' a'结尾的学生姓名。我写了这段代码:

Select name form students where name like '%a' ;

如何使用SUBSTR获得相同的结果?

4 个答案:

答案 0 :(得分:5)

我实际上认为使用RIGHT()会更有意义:

SELECT name
FROM students
WHERE RIGHT(name, 1) = 'a'

以上查询适用于MySQL,SQL Server和Postgres,但不适用于Oracle,您必须使用SUBSTR()

SELECT name
FROM students
WHERE SUBSTR(name , -1) = 'a'

答案 1 :(得分:1)

您可以使用:

Select name from students where SUBSTR(name, -1, 1) = 'a' ;

答案 2 :(得分:1)

并非所有平台都接受SUBSTR()

的负起始整数或长度整数

如果您的DBMS支持RIGHT()字符串函数,您可以尝试吗?

像这样工作:

import matplotlib.pyplot as plt

开心玩......

答案 3 :(得分:0)

使用SUBSTR()

SELECT name 
FROM students 
WHERE SUBSTR(name , -1) = 'a'