当前位置: 首页 > 编程笔记 >

DBMS中的SELECT语句及其子句

常英纵
2023-03-14
本文向大家介绍DBMS中的SELECT语句及其子句,包括了DBMS中的SELECT语句及其子句的使用技巧和注意事项,需要的朋友参考一下

select语句用于根据条件从数据库中获取所需的数据(如果有)。该数据以表格的形式返回。

select语句的基本语法是-

Select column 1, column 2 ... column N
From table_name

select语句的一个示例是-

<学生>

学生号码
学生姓名
学生电话
学生分数
学生_主修
科目
1
安德鲁
6615927284
95
文学
2
莎拉
6583654865
65岁
数学
3
哈里
4647567463
48
文学
4
莎莉
6537837084
30
文学
5
安妮
7457337732
88
数学

查询-

Select Student_Name
From Student

此查询产生以下结果-

学生姓名
安德鲁
莎拉
哈里
莎莉
安妮


Select语句中的子句

上面给出的select语句示例很简单,但实际上没有用。因此,还有许多其他与select语句关联的子句使它更有意义。其中一些是-

哪里

where子句用于过滤数据,即它返回满足特定条件的信息。例如-

Select Student_Name
From Student
Where Student_Marks >50

该查询将返回以下结果:

学生姓名
安德鲁
莎拉
安妮


通过...分组

这通常与聚合函数一起使用,以根据列的值对结果集进行分组。例如-

Select Count (Student_Number), Student_MajorSubject
From Student
Group by Student_MajorSubject

该查询将返回以下结果-

计数(学生人数)
Student_MajorSubject
3
文学
2
数学


这与Group By子句一起使用,因为聚合函数无法使用Where子句。例如- 

Select Count(Student_number), Student_MajorSubject
From Student
Group by Student_MajorSubject
Having Count(Student_Number) > 2

该查询将返回以下结果-

计数(学生人数)
Student_MajorSubject
3
文学


排序依据

order by关键字用于按升序或降序对结果进行排序。默认情况下,假定顺序为升序。例如-

Select Student_Name
From Student
Where Student_Marks>50
Order by Student_Marks

该查询将返回以下结果-

学生姓名
莎拉
安妮
安德鲁
 类似资料:
  • 问题内容: 我将如何在没有硬编码值的情况下编写此sql语句? 宁愿有这样的事情: 提前致谢.. 问题答案: 用您当前的方式构造SQL查询是一个糟糕的主意,因为它为各种SQL注入攻击打开了大门 。为了正确执行此操作,您必须改为使用“ 预备语句”。这也将解决您目前显然遇到的各种逃避问题。 请注意,这是一个昂贵的调用(除非您的应用程序服务器使用语句缓存和其他类似的功能)。从理论上讲,最好先准备一次语句,

  • 问题内容: 在WHERE子句中有使用SELECT语句描述的名称吗?这是好/不好的做法吗? 这会是更好的选择吗? 它远没有那么优雅,但是运行起来比以前的版本要快。我不喜欢它,因为它在GUI中没有非常清晰地显示(并且SQL初学者需要理解它)。我可以将其分为两个独立的查询,但是随后事情变得混乱了…… 注意:我不仅需要日期和分数(例如姓名) 问题答案: 称为相关子查询。它有它的用途。

  • 问题内容: 我有一个查询应该这样运行- 我如何在T-SQL中实现此目标而不为每个子句编写单独的查询?目前我正在运行它 只是为了根据值选择不同的列而已,这只是大量的冗余代码。还有其他选择吗? 问题答案: 此处仅需注意,出于优化的原因,最好有3个单独的SELECTS。如果只有一个SELECT,则生成的计划将必须投影所有列col1,col2,col3,col7,col8等,尽管取决于运行时@var的值,

  • SELECT 语句,FROM 子句示例 下列示例假设在员工表中存在一个假设的工资字段。请注意,此字段 实际上在 Northwind 数据库员工表之中并不存在。 此示例创建一个 dynaset 型 Recordset,基于 SQL 语句选择在员工表中的所有纪录的姓和名字段。它调用 EnumFields 过程,且该过程打印 Recordset 对象的内容到“调试”窗口。 Sub SelectX1()

  • 数据库:Sybase Advantage 11 在我对数据进行规范化的过程中,我试图删除从以下语句中得到的结果:

  • 问题内容: 我注意到以下代码在Python中是合法的。我的问题是为什么?是否有特定原因? 问题答案: else仅当你的while条件为假时才执行该子句。如果你break超出循环范围,或者引发了异常,则不会执行该异常。 考虑它的一种方法是关于条件的构造: 一个示例可能类似于: