社区
MS-SQL Server
帖子详情
怪脑袋,怪想法,谁能帮我解释 select '单引号'=1,'人间正道'=2, "双引号"=2 ,'莫名其妙', 't',12 这个select语句的含义。
msdner
2005-05-03 03:27:11
MS SQL SERVER环境。
...全文
295
14
打赏
收藏
怪脑袋,怪想法,谁能帮我解释 select '单引号'=1,'人间正道'=2, "双引号"=2 ,'莫名其妙', 't',12 这个select语句的含义。
MS SQL SERVER环境。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
msdner
2005-05-04
打赏
举报
回复
晕,竟然没有给chengpei_chen(给点阳光就灿烂)分数,眼花了,很抱歉。谢谢你的支持。
sonique
2005-05-04
打赏
举报
回复
支持楼主的钻研精神,我当初就是写出一些测试代码学习coding的
msdner
2005-05-04
打赏
举报
回复
我说错了,ANSI SQL里是没有字符串、变量这些概念了。
列名 的别名也是用双引号括起来的。
不知道谁有ANSI SQL-99 文档?
msdner
2005-05-03
打赏
举报
回复
TO 楼上:
as 在语法里是可以去掉的。
cxmcxm
2005-05-03
打赏
举报
回复
select '单引号'=1,'人间正道'=2, "双引号"=2 ,'莫名其妙', 't',12
与
select 1 as 单引号,2 as 人间正道, 2 as 双引号 ,'莫名其妙', 't',12 是一样的
chengpei_chen
2005-05-03
打赏
举报
回复
分析的不错,up
ianok
2005-05-03
打赏
举报
回复
语法
SELECT [ ALL | DISTINCT ]
[ TOP n [ PERCENT ] [ WITH TIES ] ]
< select_list >
< select_list > ::=
{ *
| { table_name | view_name | table_alias }.*
| { column_name | expression | IDENTITYCOL | ROWGUIDCOL }
[ [ AS ] column_alias ]
| column_alias = expression
} [ ,...n ]
msdner
2005-05-03
打赏
举报
回复
因此,'单引号'在这里是一个字符串常量,作为列名。
msdner
2005-05-03
打赏
举报
回复
看来只能这样解释了。
基于这样一个事实:
select '单引号'=1 --''改为""效果一样
等价于
select 1 '单引号' --''改为""效果一样
以下作一个小结:
select在用于输出时,是以记录的形式给出的,也就说包含列名和值。
在ANSI SQL里面,字符串作为列名是用单引号引起来的。而“为保持与现有应用程序的兼容性,SQL Server 并不完全强制该规则。如果字符串没有超过标识符的长度,则该字符串可包含在双引号内。但不建议这样做。”--引号部份摘自SQL SERVER联机丛书。以上讨论是在QUOTED_IDENTIFIER 为 ON 的情况下。
msdner
2005-05-03
打赏
举报
回复
谢谢楼上两位!
我是想弄明白select的用法,所以我就写了这一句想探出个究竟。。。
按我的理解,select有几个用法:
一)用于查询记录的。格式是:
select...
from...
[...]
select和from这两个是必须的,一个也不能少。
二)用于赋值。格式是:
select @test=some_value
在这里select相当于set。不过,select功能更强,可以一次给多个变量赋值。
三)用于打印。格式
select @test
相当于print。同样,select可以指定列名,如select @test test。
但是,以下就是我不能解释的:
select '单引号'=1
这个是什么意思?等号在这里的作用,是赋值吗?'单引号'在这里是变量吗?不是不能以分隔符作为变量名吗?它和以下这一句的区别?
select '单引号'
还有:
select '单引号' test
子陌红尘
2005-05-03
打赏
举报
回复
select '单引号'=1,'人间正道'=2, "双引号"=2 ,'莫名其妙', 't',12
就是返回如下一个结果集:
列名: 单引号 人间正道 双引号 无列名 无列名 无列名
值 : 2 2 2 莫名其妙 t 12
Well
2005-05-03
打赏
举报
回复
結果是知道啊
那又有什麼意思呢
還真的 不知道
沒有完整的代碼不知道
Well
2005-05-03
打赏
举报
回复
select '单引号'=1,'人间正道'=2, "双引号"=2 ,'莫名其妙', 't',12 这个select语句的含义。
這個有什麼意義嗎
樓主這樣說我真的不知道是什麼意思
又沒有上下文。
要是有整個代碼全部貼出來看一個也許會知道
chiwei
2005-05-03
打赏
举报
回复
你把语句考到SQL查询分析器里面就知道了
select '单引号'=1,'人间正道'=2, "双引号"=2 ,'莫名其妙', 't',12
结果如下:
单引号 人间正道 双引号
----------- ----------- ----------- -------- ---- -----------
1 2 2 莫名其妙 t 12
写mysql
语句
中
单引号
或者
双引号
的几个问题
sql
语句
哪里添加
单引号
问题,哪些地方必须加
双引号
,否则sql
语句
会报错? INSERT INTO table_name ( field1, field2,…fieldN ) VALUES ( value1, value2,…valueN ); 如果数据是字符型,必须使用
单引号
或者
双引号
,如:“value”。 涉及varchar的值的时候,必须有
单引号
包括varchar值。int等其他字段类型,则不需要加
单引号
包括。 如: insert into t_test(uid,name) values(1,dav
hive 中
单引号
和
双引号
的区别例子
hive中数据有但是将
单引号
换成
双引号
就查不出来了,估计是
双引号
会将中文转义
select
* from prepare where channel_name = ‘龙点’;
处理
Select
语句
中的
单引号
FUNCTION CheckString (s) as String pos = InStr(s, "'") While pos > 0 s = Mid(s, 1, pos) & "'" & Mid(s, pos + 1) pos = InStr(pos + 2, s, "'") Wend CheckString="'" & s & "'" END FUNCTION 以后在动态生成
vue变量赋值的时候,在什么时候用
双引号
,什么时候用
单引号
,什么时候不用引号...
变量值赋值的时候要根据是什么类型来给对应的符号 String 字符串 类型的加
双引号
name="陈钰"; char 字符 类型的加
单引号
sex='男'; boolean 布尔值 类型的不加引号 isShow=true; number 数字 类型的不加引号 num=18; 只要不是char...
mysql 进行update时,要更新的字段中有
单引号
或者
双引号
导致不能批量生成sql的问题...
前言 将数据从一张表迁移到另外一张表的过程中,通过mysql的concat方法批量生成sql时遇到了一个问题,即进行UPDATE更新操作时如果原表中的字段中包含
单引号
'或者
双引号
",那么就会生成不正确的update
语句
。 原因当然很简单因为update table set xxx = 'content'时content一般由英文
单引号
'或者
双引号
"包裹起来,使用
单引号
较多。 如果content中...
MS-SQL Server
34,873
社区成员
254,640
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章