用SQL语句WHERE时,如何从某个字段中取出前两个字符和某个字符相比较?

时间:2021-02-21 15:07:50
sql.add('where copy(字段名,1,2)='123'')
这个语句错误了,应该怎么写?

16 个解决方案

#1


up

#2


oracle: 'where substr(字段名,1,2)='''123''''
sqlserver: 'where substring(字段名,1,2)='''123''''

#3


copy是delphi的函数

sql.add(' where substring(字段名,1,2)='''+'123'+'''');

#4


1 sql.add('where copy(字段名,1,2)=''123''')
2 copy(字段名,1,2)是长度为2 ,'123'长度为3,肯定不等啊。

#5


sql.add( + 'where substring(字段名,1,2)='''+'123'+'''');

#6


在ORACLE中有一个函数SUBSTR,不知道其他别的数据库是不是这样的写法,用法如下:
WHERE SUBSTR(字段名,N,M)=字符串A
从字段名的第N位,取M个字符和字符串A比较,例如:WHERE SUBSTR(字段名,1,3)=‘123’

#7


哈哈哈,还是风老大眼睛厉害!!这语句不管怎样都不成立!!

#8


提示错误:invalid use of keyword.token:,1,2)=‘123’ 是怎么回事?

#9


str1:='40';
query1.sql.add('where substring(车站名,1,2)=str1');
这个语句应该怎么改?

#10


sql.add('where'+ copy(字段名,1,2)+'''=''123''')
把函数都写到引号里了,所以出错,还有风兄说的也是很对的!

#11


query1.sql.add('where substring(车站名,1,2)=str1');
不是同样的啊!
query1.sql.add('where'+ substring(车站名,1,2)+'='+str1)


#12


楼上的,你说的我试了,怎么也是提示不行呀。
str1:='40';
query1.sql.add('where substring(车站名,1,2)=str1');
这个语句应该怎么改?

#13


提示:[Error] Undeclared identifier: 'substring'

#14


SUBSTRING(字段名,1,2)

#15


头大,都是这么说的,可是为什么我写:
字符串str1被初始化为:'40':
query1.sql.add('where substring(czno,1,2)=str1');
提示错误:invalid use of keyword.token:,1,2)=str1
到底应该怎么改?

#16


头大,都是这么说的,可是为什么我写:
字符串str1被初始化为:'40':
query1.sql.add('where substring(czno,1,2)=='''+gwdsx+'''');
提示错误:invalid use of keyword.token:,1,2)='50'
到底应该怎么改?

#1


up

#2


oracle: 'where substr(字段名,1,2)='''123''''
sqlserver: 'where substring(字段名,1,2)='''123''''

#3


copy是delphi的函数

sql.add(' where substring(字段名,1,2)='''+'123'+'''');

#4


1 sql.add('where copy(字段名,1,2)=''123''')
2 copy(字段名,1,2)是长度为2 ,'123'长度为3,肯定不等啊。

#5


sql.add( + 'where substring(字段名,1,2)='''+'123'+'''');

#6


在ORACLE中有一个函数SUBSTR,不知道其他别的数据库是不是这样的写法,用法如下:
WHERE SUBSTR(字段名,N,M)=字符串A
从字段名的第N位,取M个字符和字符串A比较,例如:WHERE SUBSTR(字段名,1,3)=‘123’

#7


哈哈哈,还是风老大眼睛厉害!!这语句不管怎样都不成立!!

#8


提示错误:invalid use of keyword.token:,1,2)=‘123’ 是怎么回事?

#9


str1:='40';
query1.sql.add('where substring(车站名,1,2)=str1');
这个语句应该怎么改?

#10


sql.add('where'+ copy(字段名,1,2)+'''=''123''')
把函数都写到引号里了,所以出错,还有风兄说的也是很对的!

#11


query1.sql.add('where substring(车站名,1,2)=str1');
不是同样的啊!
query1.sql.add('where'+ substring(车站名,1,2)+'='+str1)


#12


楼上的,你说的我试了,怎么也是提示不行呀。
str1:='40';
query1.sql.add('where substring(车站名,1,2)=str1');
这个语句应该怎么改?

#13


提示:[Error] Undeclared identifier: 'substring'

#14


SUBSTRING(字段名,1,2)

#15


头大,都是这么说的,可是为什么我写:
字符串str1被初始化为:'40':
query1.sql.add('where substring(czno,1,2)=str1');
提示错误:invalid use of keyword.token:,1,2)=str1
到底应该怎么改?

#16


头大,都是这么说的,可是为什么我写:
字符串str1被初始化为:'40':
query1.sql.add('where substring(czno,1,2)=='''+gwdsx+'''');
提示错误:invalid use of keyword.token:,1,2)='50'
到底应该怎么改?