SQL基础——查询基础(上)

简介: SQL基础——查询基础(上)

查询基础

前言

系统学习SQL的笔记,用于记录学习过程。

整体思维导图



列的查询

从表中选取数据是需要使用SELECT语句,通过SELECT语句查询并选取出必要数据的过程称为匹配查询或查询(query)

语法2.1 基本的SELECT语句

 SELECT <列名>,
 …… FROM <表名>;

该SELECT语句包含SELECT和FROM两个子句(clause)。子句是SQL语句的组成要素,是以SELECT或者FROM等作为起始的短语。

SELECT子句中列举了希望从表中查询出的列的名称,而FROM子句则指出选择出数据的表的名称。


代码示例:从Product表中输出3列

 SELECT product_id, product_name, purchase_price  FROM Product;

执行结果


SELECT语句第一行的SELECT product_id, product_name, purchase_price就是SELECT子句。查询出的列的顺序可以任意指定。查询多列时,需要使用逗号进行分隔。查询结果中列的顺序和SELECT子句中的顺序相同。

查询出所有的列

想要查询出全部列是,可以使用代表所有列的星号(*)

语法2.2 查询全部的列

 SELECT *  FROM <表名>;

代码示例2.2 输出Product表中全部的列

 SELECT *  FROM Product;

执行结果


注意:星号(*)代表全部列的意思。但是,如果使用星号的话,就无法设定列的显示顺序了。这时就会按照CREATE TABLE语句的定义对列进行排序。

为列设置别名

SQL语句可以使用AS关键字为列设定别名。

代码示例2.3 为列设置别名

SELECT
    product_id AS id,
    product_name AS `name`,
    purchase_price AS price 
FROM
    Product;

执行结果

代码示例2.4 设置中文别名

SELECT
    product_id AS "商品编号",
    product_name AS "商品名称",
    purchase_price AS "进货单价" 
FROM
    Product;

通过执行结果就可以知道相对于英文别名来说,会更好理解与操作。

执行结果


注意:设定汉语别名时需要使用双引号(")括起来。

常数的查询

SELECT子句不仅可以书写列名,还可以书写常数。

代码示例2.5 查询常数

SELECT
    '商品' AS string,
    38 AS number,
    '2009-02-24' AS date,
    product_id,
    product_name 
FROM
    Product;

执行结果



从结果中删除重复行

想要删除重复行时,可以通过在SELECT子句中使用DISTINCT来实现

代码示例2.6 使用DISTINCT删除product_type列中重复的数据

 SELECT DISTINCT product_type  FROM Product;

执行结果


注意:在SELECT语句中使用DISTINCT可以删除重复行。

在使用DISTINCT时,NULL也被视为一类数据。NULL存在于多行中时,也会被合并为一条NULL数据。

代码示例2.7 在多列之前使用DISTINCT

SELECT DISTINCT
    product_type,
    regist_date 
FROM
    Product;

执行结果


注意:DISTINCT关键字只能用在第一个列名之前,因此,请大家注意不能写成regist_date, DISTINCT product_type。

根据WHERE语句来选择记录

SELECT语句通过WHERE子句来指定查询数据的条件。

语法示例2.3 SELECT语句中的WHERE子句

SELECT
    <列名>,
    …… 
FROM
    <表名> 
WHERE
    <条件表达式>;

代码示例2.8 用来选取product_type列为’衣服’的记录的SELECT语句

SELECT
    product_name,
    product_type 
FROM
    Product 
WHERE
    product_type = '衣服';

执行结果


通过WHERE子句查询出符合指定条件的记录,然后再选取出SELECT语句指定的列。注意:SQL中子句的书写顺序是固定的,不能随意更改。WHERE子句必须紧跟在FROM子句之后,书写顺序发生改变的话会造成执行错误。

目录
相关文章
|
8天前
|
SQL 存储 缓存
如何优化SQL查询性能?
【10月更文挑战第28天】如何优化SQL查询性能?
46 10
|
2天前
|
SQL 关系型数据库 MySQL
|
16天前
|
SQL 数据库 开发者
功能发布-自定义SQL查询
本期主要为大家介绍ClkLog九月上线的新功能-自定义SQL查询。
|
23天前
|
SQL 移动开发 Oracle
SQL语句实现查询连续六天数据的方法与技巧
在数据库查询中,有时需要筛选出符合特定时间连续性条件的数据记录
|
30天前
|
SQL Java 数据库连接
如何使用`DriverManager.getConnection()`连接数据库,并利用`PreparedStatement`执行参数化查询,有效防止SQL注入。
【10月更文挑战第6天】在代码与逻辑交织的世界中,我从一名数据库新手出发,通过不断探索与实践,最终成为熟练掌握JDBC的开发者。这段旅程充满挑战与惊喜,从建立数据库连接到执行SQL语句,再到理解事务管理和批处理等高级功能,每一步都让我对JDBC有了更深的认识。示例代码展示了如何使用`DriverManager.getConnection()`连接数据库,并利用`PreparedStatement`执行参数化查询,有效防止SQL注入。
72 5
|
1月前
|
SQL 数据挖掘 数据库
SQL查询每秒的数据:技巧、方法与性能优化
id="">SQL查询功能详解 SQL(Structured Query Language,结构化查询语言)是一种专门用于与数据库进行沟通和操作的语言
|
1月前
|
SQL 移动开发 大数据
SQL语句查询连续六天满足条件的记录
在数据库管理和数据分析中,我们经常需要查询符合特定时间范围内连续几天的记录
|
1月前
|
SQL 数据挖掘 关系型数据库
SQL查询次数大于1的记录:高效技巧与方法
在数据库管理中,经常需要统计某些操作的次数,特别是当需要找出哪些记录或值出现的次数超过一定阈值(如大于1次)时
|
1月前
|
SQL 存储 安全
SQL查询数据库:基础概念与操作指南
在数字化时代,数据库已成为信息管理的重要工具之一。作为管理和操作数据库的核心语言,SQL(结构化查询语言)已成为数据管理和查询的关键技能。本文将全面介绍SQL查询数据库的基本概念、语句和操作指南,以帮助初学者快速上手,同时为进阶用户提供有价值的参考。一、数据库与SQL简介数据库是一种存储、管理和检索
37 3
|
1月前
|
SQL 数据库
SQL查询中排除空值列的技巧与方法
在数据库查询中,经常需要处理包含空值(NULL)的数据列

热门文章

最新文章

下一篇
无影云桌面