1、WHERE 语句
SELECT * FROM Websites WHERE country='CN';
1.1、WHERE 子句中的运算符
下面的运算符可以在 WHERE 子句中使用:
| 运算符 | 描述 |
|---|---|
| = | 等于 |
| <> | 不等于。注释:在 SQL 的一些版本中,该操作符可被写成 != |
| > | 大于 |
| < | 小于 |
| >= | 大于等于 |
| <= | 小于等于 |
| BETWEEN | 在某个范围内 |
| LIKE | 搜索某种模式 |
| IN | 指定针对某个列的多个可能值 |
2、SQL AND & OR 运算符
and 就相当于Java中&& 必须两边条件同时达到才能成立。
or 就相当于Java中的 || 两边条件达到一个就可以。
and语法如下:
SELECT * FROM WebsitesWHERE country='CN'AND alexa > 50;
or 语法如下:
SELECT * FROM WebsitesWHERE country='USA'OR country='CN';
2.1、结合 AND & OR
您也可以把 AND 和 OR 结合起来(使用圆括号来组成复杂的表达式)。
下面的 SQL 语句从 “Websites” 表中选取 alexa 排名大于 “15” 且国家为 “CN” 或 “USA” 的所有网站:
SELECT * FROM WebsitesWHERE alexa > 15AND (country='CN' OR country='USA');
3、SQL ORDER BY 关键字(排序)
ORDER BY 关键字用于对结果集进行排序。
ORDER BY 关键字默认按照升序对记录进行排序。如果需要按照降序对记录进行排序,您可以使用 DESC 关键字。
ORDER BY 语法如下:
SELECT column_name,column_nameFROM table_nameORDER BY column_name,column_name ASC|DESC; -- DESC 降序,ASC 是升序,默认就是升序
4、DISTINCT 语句(去重)
语法:
SELECT DISTINCT country FROM Websites;
5、INSERT INTO 插入语句
INSERT INTO 语句可以有两种编写形式。
第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:
INSERT INTO table_nameVALUES (value1,value2,value3,...);
第二种形式需要指定列名及被插入的值:
INSERT INTO table_name (column1,column2,column3,...)VALUES (value1,value2,value3,...);
6、SQL UPDATE 语句 修改语句
SQL UPDATE 语法
UPDATE table_nameSET column1=value1,column2=value2,...WHERE some_column=some_value;
![]() |
请注意 SQL UPDATE 语句中的 WHERE 子句! WHERE 子句规定哪条记录或者哪些记录需要更新。如果您省略了 WHERE 子句,所有的记录都将被更新! |
|---|---|
7、SQL SELECT TOP, LIMIT, ROWNUM 子句(分页)
7.1、SQL SELECT TOP 子句
SELECT TOP 子句用于规定要返回的记录的数目。
SELECT TOP 子句对于拥有数千条记录的大型表来说,是非常有用的。
注意:并非所有的数据库系统都支持 SELECT TOP 语句。 MySQL 支持 LIMIT 语句来选取指定的条数数据, Oracle 可以使用 ROWNUM 来选取。
7.2、SQL Server / MS Access 语法
SELECT TOP number|percent column_name(s)
FROM table_name;
MySQL 语法
SELECT column_name(s)FROM table_nameLIMIT number;
实例
SELECT *FROM PersonsLIMIT 5;
Oracle 语法
SELECT column_name(s)FROM table_nameWHERE ROWNUM <= number;
实例
SELECT *FROM PersonsWHERE ROWNUM <=5;
8、IN 操作符(包括)
IN 操作符允许您在 WHERE 子句中规定多个值。是看这个字段中是否包含这些字段
SQL IN 语法:
SELECT column_name(s)FROM table_nameWHERE column_name IN (value1,value2,...);

