MySQL必知必会 笔记(二)
「written by Talaxy on 2/22/20」
SELECT语句
最经常使用的SQL语句就是SELECT语句了,它的用途是从一个或多个表中检索信息。
为了使用SELECT检索数据,必须至少给
笔记对应书本的四五六章 「written by Talaxy on 2/22/20」 SELECT语句 最经常使用的SQL语句就是SELECT语句了,它的用途是从一个或多个表中检索信息。 为了使用SELECT检索数据,必须至少给出两条信息: 检索单个列 从表中获得一个列 select 列名 from 表名; 如果没有明确排序查询结果,则返回的数据的顺序没有特殊意义 多条SQL语句必须以分号间隔。 MySQL和多数DBMS一样,不需要在单条SQL语句后加分号。 但如果使用的是mysql命令行,必须加上分号来结束SQL语句。 SQL语句不区分大小写。但许多SQL开发人员喜欢对SQL关键字使用大写,对列和表名使用小写,使得提高阅读性。 (注意:标识符,即数据库名、表名、列名,在MySQL4.1之前是区分大小写的) 一行SQL语句可以拆分为几行来写 检索多个列
检索所有列
如果不是真的需要,最好不要用*通配符,检索不需要的列通常会降低检索和应用程序的性能 可以用*通配符来查询名字未知的列 检索不同的行(纪录) 如果不想要每个值每次都出现(去重):
distinct关键字必须放在所有列名之前 限制结果 如果只要返回前几行:
这里的行数是指最大行数 返回从第几行开始后的几行:
这里第一个数是开始位置,第一个位置是0,第二个数是要检索的行数。比如 "limit 1, 1" 会检索出第二行而不是第一行 MySQL5也可以这样写来提高阅读性:
使用完全限定的表名
这个语句和最开始的SELECT语句效果相同,但有些情况下需要这么写,以后章节会提到。 排序数据子句(clause): SQL语句由子句构成,有些子句是必需的mssql 按关键字排序,有的是可选的。一个子句通常由一个关键字 对指定列排序(字典排序)输出:
按多个列排序
ORDER BY后列的顺序为排序优先级顺序,由高到低 指定排序方向
[]包含的内容为可选项 若要对指定的列排序设为降序,在列的后面加desc即可。每个列后都可以加desc。 使用ORDER BY和LIMIT的组合,能找出第一个列中最高或最低的值:
使用WHERE子句 检索时可能会需要过滤出需要的信息。只检索所需数据需要指定搜索条件(search criteria),搜索条件也称为过滤条件(filter condition)
条件可以是判等,比如 "列二 = 2.5" 尽量使用SQL过滤而非手动过滤,手动过滤会让服务器发送多余的数据,导致网络带宽的浪费。 在同时使用ORDER BY和WHERE子句时,应让WHERE在前,否则会产生错误 WHERE子句操作符 (编辑:92站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |