结构化查询语言(SQL)为数据库用户提供了创建自定义查询以从数据库中提取信息的能力。在前一篇文章中,我们探讨了如何使用SQL SELECT查询从数据库中提取信息。让我们进一步展开讨论,并探索如何执行高级查询以检索符合特定条件的数据。
让我们考虑一个基于常用的北风数据库的示例,该数据库经常与数据库产品一起作为教程。
以下是数据库产品表的摘录:
产品ID | 产品名称 | 供应商 | 量化运行 | 单价 | 单位股票 |
---|---|---|---|---|---|
1. | 柴 | 1. | 10盒20袋 | 18 | 39 |
2. | 张 | 1. | 24-12盎司瓶 | 19 | 17 |
3. | 茴香糖浆 | 1. | 12-550毫升瓶 | 10 | 13 |
4. | 厨师长安东的卡津调味品 | 2. | 48-6盎司罐子 | 22 | 53 |
5. | 厨师长安东的秋葵汤 | 2. | 36盒 | 21.35 | 0 |
6. | 奶奶的博伊森浆果酱 | 3. | 12-8盎司罐子 | 25 | 120 |
7. | 鲍勃叔叔的有机干梨 | 3. | 12-1磅包装。 | 30 | 15 |
我们将对查询设置的第一个限制涉及简单的边界条件。我们可以在SELECT查询的WHERE子句中指定这些条件,使用标准运算符构造的简单条件语句,例如,>=,和<=。
首先,让我们尝试一个简单的查询,它允许我们提取数据库中单价超过20.00的所有产品的列表:
SELECT ProductName, UnitPrice来自产品其中单价>20.00这将生成四种产品的列表,如下所示:
ProductName UnitPrice------- --------主厨安东秋葵汤21.35主厨安东卡琼调味品22.00奶奶的boysenberry扩散25.00鲍勃叔叔的有机干梨30.00我们还可以将WHERE子句与字符串值一起使用。这基本上将字符等同于数字,A表示值1,Z表示值26。例如,我们可以通过以下查询显示名称以U、V、W、X、Y或Z开头的所有产品:
SELECT ProductName来自产品其中productname>='t'这将产生以下结果:
ProductName-------鲍勃叔叔的有机干梨WHERE子句还允许我们使用多个条件对值实现范围条件。例如,如果我们想接受上面的查询,并将结果限制为价格介于15.00和20.00之间的产品,我们可以使用以下查询:
SELECT ProductName, UnitPrice来自产品其中单价>15.00且单价<20.00这将产生如下所示的结果:
ProductName UnitPrice------- --------柴18.00张19.00SQL还提供了语法之间的快捷方式,减少了需要包含的条件数量,并使查询更具可读性。例如,我们可以将相同的查询表示为:
SELECT ProductName, UnitPrice来自产品其中单价介于15.00和20.00之间与我们的其他条件子句一样,BETWEEN也使用字符串值。如果我们想要生成一个以V、W或X开头的所有国家的列表,我们可以使用以下查询:
SELECT ProductName来自产品其中productname介于“a”和“d”之间这将产生以下结果:
ProductName-------茴香糖浆柴青稞酒厨师长安东的秋葵汤厨师长安东的卡津调味品WHERE子句是SQL语言的一个强大部分,它允许您将结果限制为指定范围内的值。它通常用于帮助表达业务逻辑,应该成为每个数据库专业人员工具包的一部分。将公共子句合并到存储过程中,使那些不懂SQL的人能够访问它,这通常很有帮助。
...select、update和delete一起使用。 参考下面的学生表, 要选择student_id等于3的学生的姓名和年龄,可以使用以下SQL查询。 从student_id=3的学生中选择name,age; 也可以使用不等于(!=),大于(>),小于(=),小于或等于(<...
...用户身份登录。 登录后,右键单击数据库文件夹,然后选择“还原数据库”。 单击“用于还原的源”部分下“从设备”旁边的省略号按钮。 将“文件”设置为备份媒体,然后单击“添加”。 浏览到要还原的SQL备份(BAK)文...
...ERT、UPDATE和DELETE等命令被分类为DML。SELECT命令用于从表中选择一组记录。INSERT用于向表中输入新记录。更新用于修改现有记录,删除用于删除特定记录。 dcl公司 GRANT和INVOKE等命令属于DCL。GRANT用于向用户授予权限,REVOKE用于收...
... int; 设置@FirstName=“Ann”; 设置@Age=20; 从StudentDetails中选择FirstName、LastName、City、Age 其中FirstName=@FirstName或Age=@Age; 去吧 上面的SQL脚本声明了两个变量:FirstName和Age。SET语句为它们赋值。最后,select语句帮助使用这些变量从St...
...面的语句。假设一张桌子叫学生。 按年龄从学生订单中选择*; 首先,考虑上面的示例,该示例提供了按年龄升序排列的学生数据集。 其次,可以使用“DESC”关键字编写相同的查询,如下所示。 从学生订单中选择*按年龄描述...
...S系统是sqlserver和MySQL。它们的易访问性和简单性使得用户选择它们而不是其他现有系统。要在这些系统上操作,有一种预定义的查询语言,称为SQL。SQL是一种使用简单查询来存储和操作数据库中数据的语言。它允许执行用于处理...
...单击要使用的数据库实例的名称,然后从“任务”菜单中选择“导入数据”。 将数据导入sql server 2012 SQL Server导入和导出向导将指导您完成从任何现有数据源向SQL Server数据库导入数据的过程。本示例介绍了将联系人信息从Micro...
...,它是一个非常好的工具,但这只是您可以使用它运行的范围。 SQLServer2008R2工作组被称为“小型企业SQLServer”,它提供了一系列令人印象深刻的功能,每个处理器都有一个价格标签,或者有5个用户的许可证。Workgroup edition在两...
...展开相关数据库的树。在“表格”节点中,右键单击它并选择“新建”&gt;桌子救生索 在“新建表格”屏幕中,输入信息网格:列名:为字段提供唯一名称。数据类型:从下拉列表中选择字段包含的信息类型。查看Microsoft提...