查询(select)的基本格式: select <列名> from <表名> [where <查询限定条件>] 解释: select 查询的命令体 列名:要查询的列,多个列用逗号,隔开 星号(*)代表所有列 where:是选填的,不填查询的结果是整个列的数据 例子: select 成绩 from 成绩表 where 姓名='张三' 含义:查询成绩表中张三的成绩,只显示张三的分数。如果不加where ,则显示成绩表中成绩列所有值
在 SQL server 中,select语句的语法: select <列名> [into 新表名] from <表名> [where 查询条件] [group by 分组条件] [having 查询条件] [order by 排序条件 [asc | desc ] ] 解释: into:可选参数,用于把查询内容保存到新表中,不用再数据库中新建表。 where的查询条件字段由条件表达式或逻辑表达式。 group by:可选参数,指定查询结果的分组条件,通常是列名,但不能是别名。 having:可选参数,指定分组搜索条件,通常与group by字句一起使用。 order by:可选参数,指定查询结果的排序方式。排序条件 asc表示升序,desc表示降序,默认排序是asc升序。
各种查询例子: 1.查询成绩表中所有列。 select * from 成绩表 2.查询成绩表中姓名,成绩列内容。 select 姓名,成绩 from 成绩表 3.查询成绩表中张三的成绩,结果显示姓名和成绩 select 姓名,成绩 from 成绩表 where 姓名='张三' 4.查询成绩表中成绩在90~100之间所有人员成绩。 select * from 成绩表 where 成绩 between 90 and 100 5.查询成绩表中成绩为80,90,95分的所有信息 select * from 成绩表 where 成绩 in (80,90,95) 6.查询成绩表中姓张的学生所有信息。 select * from 成绩表 where 姓名 like '张%' 7.查询成绩表中1班张三的所有信息。 select * from 成绩表 where 姓名='张三' and 班级=1 8.查询成绩表中备注不为空的人的所有信息 select * from 成绩表 where 备注 is not null 9.使用top关键字限制查询返回的行数, 查询成绩表中前10行数据。 select top 10 * from 成绩表 10.改变查询结果名称:查询成绩表中姓名和成绩两列数据 列名显示成英文的name,grade select 姓名 as name,成绩 as grade from 成绩表 11.查询成绩表中所有人的总成绩,列名显示为‘总成绩’。 select sum(成绩) as 总成绩 from 成绩表 注:sum是求和函数。还可以省略as, 还可以写成 select 总成绩=sum(成绩) from 成绩表 12.查询成绩表中所有信息,按照成绩从高到低显示结果。 select * from 成绩表 order by 成绩 desc 13.查询成绩表中所有人的平均成绩 select avg(成绩) as 平均成绩 from 成绩表 注:avg是求平均值函数。 14.查询成绩表中的最高分(max)和最低分(min) select max(成绩) as 最高分,min(成绩) as 最低分 from 成绩表 15.查询成绩表中的所有行数。 select count(*) 总行数 from 成绩表 注:count是统计函数,用于返回表达式中非空值的计数,使用*可以不必指定特定列而计算所有行数。 16.查询成绩表中每个班级的总成绩。 select 班级,sum(成绩) as 总成绩 from 成绩表 group by 班级 17.查询成绩表中总成绩大于200的班级。 select 班级,sum(成绩) as 总成绩 from 成绩表 group by 班级 having sum(成绩)>200 注:where 后边不能接函数, having 可以添加函数。 18.将成绩表中的所有数据插入新表“成绩表副本” select * into 成绩表副本 from 成绩表 19.将成绩表中的1班成绩插入新表“一班成绩表” select * into 一班成绩表 from 成绩表 where 班级=1 注:插入的新表,之前数据库不能存在该表。