问题 单项选择题

查询订购单号(字符型,长度为4)尾字符是“1”的错误命令是

A.SELECT*FROM订单WHERE SUBSTR(订购单号,4)=“1”

B.SELECT*FROM订单WHERE SUBSTR(订购单号,4,1)=“1”

C.SELECT*FROM订单WHERE“1”$订购单号

D.SELECT*FROM订单WHERE RIGHT(订购单号,1)=“1”

答案

参考答案:C

解析:函数SUBSTR(字符表达式,起始位置,长度)表示从指定表达式的起始位置取一个指定长度的子串作为函数值。没有设定长度时,系统默认自定长度为1。 RIGHT(字符表达式,长度)表示从指定表达式的右端取一个指定长度的子串作为函数值,没有设定长度时,系统默认自定长度为1。故选项C为错误命令,选项A和选项B都使用 SUBSTR()作为查询条件,都能够实现从订购单号的第四个字符开始取长度为1的字符串,由于订购单号长度为4,因此取得的结果就是尾字符串。选项D使用RIGHT()函数,从订购单号的末尾取长度为1的字符串,因此也是正确的。选项C中的查询条件“1”$订购单号只能测试字符“1”是否在订购单号中出现,不能测试尾字符是否为“1”。

选择题
多项选择题