Silence.end 发表于 2012-6-3 21:25:17

一个SQL语句执行出错,请教什么原因。

select ascii(substring((select db_name()),1,1))>90
查询当前数据库名的第一位的ASCII码与90比较,怎么就出错了呢?

hkylin 发表于 2012-6-3 23:36:15

select 后面好像不能跟>这样的符号吧?

select db_name()
where ascii(substring((select db_name()),1,1))>90

Silence.end 发表于 2012-6-4 10:35:13

先谢谢楼上的,能解释下这句是什么意思吗

hkylin 发表于 2012-6-4 12:49:41

Silence.end 发表于 2012-6-4 10:35 static/image/common/back.gif
先谢谢楼上的,能解释下这句是什么意思吗

就是你的写的那个意思呀:查询当前数据库名的第一位的ASCII码与90比较

Silence.end 发表于 2012-6-4 12:59:40

查询分析器直接返回来当前库名,不是我要的结果

hkylin 发表于 2012-6-4 14:28:05

Silence.end 发表于 2012-6-4 12:59 static/image/common/back.gif
查询分析器直接返回来当前库名,不是我要的结果

额你想返回什么?

Silence.end 发表于 2012-6-4 16:00:25

返回当前库名的ASCII码,与ascii码90做比较,比较正确返回1,错误返回0

Silence.end 发表于 2012-6-4 16:08:39

是当前库名的第一个字符的ASCII码

hkylin 发表于 2012-6-5 22:10:20

select
(
case when ascii(substring((select db_name()),1,1))='90'
then '1'
else
'0'
end
)

Silence.end 发表于 2012-6-8 12:16:31

查询当前数据库名的第一位的ASCII码,并让它和ascii码90做比较,比较成立返回真,否则返回假。

xii123 发表于 2013-1-14 11:06:44

额,不错看看了、:lol

伙夫和甲鱼 发表于 2016-2-3 23:31:09

select 语句不能直接接‘》'
页: [1]
查看完整版本: 一个SQL语句执行出错,请教什么原因。