sqlserver
mysql
access
sqlite
oracle
excel
我们的Sql语句在很多数据库中都是通用的,比如像Mysql数据库 Access数据库. Oracle数据库. Sqlite数据库 .甚至在我们的Excel中也可以使用Sql语句.所以,大家主要看我下面图片中是怎么样使用sql语句的语法.然后套用到你需要的地方就OK了.
我使用的是sqlserver 2008.我先来显示一下我表中所有的数据.
我来显示一下我数据库表中年龄大于20岁的,这条语句很简单.select * from student where stuage >20;我们看到已经用select把自己想要的结果显示出来了.
但是有个问题,如果我们是开发者,或许可以看懂.如果是学生的家长,它不认识英文怎么办呢?这个时候,我们就需要转换成中文.select stuid as 编号,stuname as 姓名,stusex as 性别,stuage as 年龄 ,stuemail as 电子邮箱from student where stuage >20;
当然,我们甚至可以把年龄是23岁设置显示为大龄,否则为正常.select stuid as 编号,stuname as 姓名,stusex as 性别,case when stuage>='23' then '大龄' else '正常' end as 年龄 ,stuemail as 电子邮箱from student;
select stuid as '编号',stuname as [姓名],stusex as 性别,case when stuage>='23' then '大龄' else '正常' end as '年龄',stuemail as 电子邮箱from student;大家注意看这次的写法,虽然我们显示和上一个没什么区别.但是我们as后面别名的写法有的加括号,单引号,双引号,以及没有引号.它们之间有什么区别呢?这可是数据库的面试题.
如果我们把电子邮箱中间加上空格. 电子 邮箱.那么我们这条sql语句就报错了.但是 '编 号'[姓 名] '年 龄'是都可以加空格的.注意看下面图中圈到的部分.
单引号代表的是字符串.而方括号是为了避免和系统的关键字冲突.select [stuid] as '编 号',[stuname] as [姓 名],[stusex] as [性别],case when [stuage]>='23' then '大龄' else '正常' end as '年 龄',[stuemail] as [电子邮箱]from [student];比如像这样的写法.. 而双引号是ansi-sql的一个美国国家标准协会.其实跟方括号一个意思.只不过一个是标准的,一个是后来微软又增加了的.