⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 kj06-05-01.txt

📁 asp.net(适用于高职高专教学)电子教案
💻 TXT
字号:
6.5.1  获取数据表中的记录
存储数据的目的主要是为了日后使用。获取数据表中的记录(或对记录进行某些统计操作)是应用中最为常见的需求。
在SQL中,满足上述需求的语句是Select。
1.筛选记录
对于数据表,如果需要获取表中所有记录,则可以使用下列语句:
Select * From 数据表

在实际应用中,往往需要在数据表中查找满足某些条件的记录,这时可根据需要构造适当的条件表达式,然后以Where子句的方式加入到Select语句中。
下面是几个常用的筛选操作。
* 在“成绩表”中,筛选出姓名为“甄小灵”的记录,可用语句
Select * From 成绩表 Where 姓名='甄小灵'
* 在“成绩表”中,筛选出英语成绩大于或等于90分的记录,可用语句
Select * From 成绩表 Where 英语>=90
* 在“成绩表”中,筛选出英语成绩大于或等于80分,且高等数学成绩大于或等于90分的记录,可用语句
Select * From 成绩表 Where 英语>=80 And 高等数学>=90
* 在“成绩表”中,筛选出所有陈姓学生的记录,可用语句
Select * From 成绩表 Where 姓名 Like '陈%'
* 在“成绩表”中,筛选出姓名中包含“月”字的所有学生的记录(即进行所谓的模糊查询),可用语句
Select * From 成绩表 Where 姓名 Like '%月%'
* 在“成绩表”中,筛选出姓名中第三个字符为“立”字的所有学生的记录,可用语句
Select * From 成绩表 Where 姓名 Like '__立'
2.选择字段
在许多情况下,并不要求获取数据表中的所有字段。这时可以将上面所列出的Select语句中的“*”用需要提取字段的字段名称列表代替。事实上,在字段列表中,不仅可包含数据表中原有的字段,也可以包含任意的表达式。例如:
* 在“成绩表”中,提取所有学生的英语成绩,可用语句
Select 英语 From 成绩表
* 在“成绩表”中,提取所有学生的各科成绩及总成绩,可用语句
Select 姓名,高等数学,普通物理,普通化学,机械制图,英语,体育,高等数学+普通物理+普通化学+机械制图+英语+体育 As 总分 From 成绩表
上面语句中的As关键字用于指定所获取的二维表的列标题。
3.排序
一般而言,存放在数据表中的记录是无序的,如果需要获得按某种或某些规则排序的数据表,则可以使用Order By子句。例如:
* 在“成绩表”中,提取所有学生的各科成绩,并按高等数学升序排列记录,可用语句
Select * From 成绩表 Order By 高等数学
* 在“成绩表”中,提取所有学生的各科成绩,并按高等数学降序排列记录,可用语句
Select * From 成绩表 Order By 高等数学 DESC
* 在“成绩表”中,提取所有学生的各科成绩,并按机械制图、高等数学升序排列记录,可用语句
Select * From 成绩表 Order By 机械制图 ,高等数学
* 在“成绩表”中,提取所有学生的各科成绩及总成绩,并按总成绩降序排列记录,可用语句
Select 姓名,高等数学,普通物理,普通化学,机械制图,英语,体育,高等数学+普通物理+普通化学+机械制图+英语+体育 As 总分 From 成绩表 Order By 高等数学+普通物理+普通化学+机械制图+英语+体育 DESC
4.设定返回的记录数
有时并不要求查阅所有满足条件的记录,这时可以通过Top子句限制返回的记录。例如:
* 在“成绩表”中,提取所有学生的各科成绩及总成绩,按总成绩降序排列记录,但只查看前5条记录,可用语句
Select Top 5 姓名,高等数学,普通物理,普通化学,机械制图,英语,体育,高等数学+普通物理+普通化学+机械制图+英语+体育 As 总分 From 成绩表 Order By 高等数学+普通物理+普通化学+机械制图+英语+体育 DESC
* 在“成绩表”中,提取所有学生的各科成绩及总成绩,按总成绩降序排列记录,但只查看前面的记录,所查看记录数为总记录数的50%,可用语句
Select Top 50 Percent 姓名,高等数学,普通物理,普通化学,机械制图,英语,体育,高等数学+普通物理+普通化学+机械制图+英语+体育 As 总分 From 成绩表 Order By 高等数学+普通物理+普通化学+机械制图+英语+体育 DESC
* 在“成绩表”中,筛选出高等数学成绩为空值的所有学生的记录,可用语句
Select * From 成绩表 Where 高等数学 Is Null
* 在“成绩表”中,筛选出机械制图成绩为90、87或68的所有学生的记录,可用语句
Select * From 成绩表 Where 机械制图 In (90,87,68)
* 在“成绩表”中,筛选出姓名为“韩成子”或“张月馨”的记录,可用语句
Select * From 成绩表 Where 姓名 In ('韩成子','张月馨')
* 在“成绩表”中,筛选出机械制图成绩在70到90之间的所有学生的记录,可用语句
Select * From 成绩表 Where 机械制图 Between 70 And 90
需要指出的是,在构造条件表达式时,除了可采用上述方式外,还可以使用Visual Basic.NET函数。例如下列语句可筛选出所有张姓学生的记录。
Select * From 成绩表 Where Mid(姓名,1,1)= '张'

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -