SELECT [DISTINCT] column_name1,......|*
FROM table_name
[WHERE conditions];
//[DISTINCT] 设置 查询结果不重复显示
//COLUMN 可简写为 COL
COLUMN column_name HEADING new_name; //设置查询时,列显示的字段名。new_name可以是中文。
COLUMN column_name FORMAT dataformat; //设置查询时,列显示的格式
COLUMN column_name CLEAR; //清除格式
例:COLUMN username FORMAT a10; //设置字符类型 显示的长度
COLUMN id FORMAT 999.9; //设置数字类型 的格式
COLUMN id FORMAT $999.9; //设置数字类型 的格式
SELECT * FROM table_name;
SELECT column1_name,... FROM table_name;
//COLUMN 可简写为 COL
COLUMN column_name HEADING new_name; //设置查询时,列显示的字段名。new_name可以是中文。
SELECT column1_name AS new_column1_name ,... FROM table_name; //new_column1_name 可以是中文。
运算符 |
含义 |
+ |
加 |
- |
减 |
* |
乘 |
/ |
除 |
** |
乘方 |
运算符 |
含义 |
AND |
两者同时为真,结果才为真 |
OR |
有一个为真,结果就为真 |
NOT |
取反 |
运算符 |
含义 |
IS NULL |
如果测试值为NULL,则返回值为true,否则为false |
LIKE |
比较字符串,结合 % 进行模糊查询 |
BETWEEN |
测试值是否在指定的范围内 |
IN |
测试值是否在一系列的值中 |
运算符 |
含义 |
= |
等于 |
!=, <>,~= |
不等于 |
< 、 <= |
小于 小于等于 |
> 、 >= |
大于 大于等于 |
运算符 |
含义 |
11 |
用于连接两个字符串 |
例:SELECT id+20 from userinfo;
条件查询
优先级:not > and > or
例:SELECT * FROM userinfo WHERE username='xxx';
LIKE |
比较字符串,结合 % 进行模糊查询 |
通配符: _ 一个只能代表一个字符。 % 代表0到多个字符。
例:select * from userinfo where username like 'x%';
BETWEEN...AND
例:select * from userinfo where id BETWEEN 0 AND 20;
IN/NOT IN
例:select * from userinfo where username in ('xxx','bbb');
DESC/ASC 降序/升序
SELECT ... FROM ... [WHERE ...]
ORDER BY column1_name DESC/ASC , ...;
例:select * from userinfo order by id desc;
第一种形式:
CASE column_name
WHEN value1
THEN result1,......
[ELSE result] END;
例:SELECT username,CASE username
WHEN 'xxx' THEN '计算机部门'
WHEN 'bbb' THEN '市场部门'
ELSE '其他部门' END as 部门
FROM userinfo;
第二种形式:
CASE
WHEN column_name = value1 THEN result1,...
[ELSE result] END;
例:SELECT username, CASE
WHEN username = 'xxx' THEN '计算机部门'
WHEN username = 'bbb' THEN '市场部门'
ELSE '其他部门' END as 部门
FROM userinfo;DECODE(column_name,value1,result1,value2,result2,defaultvalue)
例:SELECT username,DECODE(username,'xxx','计算机部门','bbb','市场部门','其他部门') as 部门 from userinfo;