1. select * from 表名 limit 数字
选取文章前几条记录;
2. SELECT * from blog_user ORDER BY user_name
查询出来的数据根据user_name排序(正序)加desc是逆序
3. SELECT * FROM blog_user WHERE user_name LIKE 'a%'
模糊查询以a开头的
SELECT * FROM blog_user WHERE user_name LIKE '%a'
模糊查询以a结尾的
SELECT * FROM blog_user WHERE user_name LIKE '%a%'
模糊查询包含a的
4. SELECT * FROM blog_user WHERE user_name LIKE '%王_庆%'
查询user表中姓为“王”,名字第一个是任意字符的,第二个是庆的用户
5.SELECT * FROM blog_user WHERE user_name IN ('王庆','admian')
==SELECT * FROM blog_user WHERE user_name='王庆' OR user_name='admian'
选取user_name是王庆和admian的用户
5.between语法
SELECT * FROM blog_user WHERE user_name BETWEEN 'admian' AND '王小庆' ORDER BY user_name DESC
查询介于admian和王小庆之间的数据,根据user_name列逆序
(1)SELECT * FROM blog_user WHERE user_name NOT BETWEEN 'admian' AND '王小庆' ORDER BY user_name DESC
查询介于admian和王小庆以外的数据,根据user_name列逆序
6、Alias 语法
(1)表名称指定别名
select 列名称 from 表名称 as 别名;
(2)列名称指定别名
select 列名称 as 别名 form 表名称;
7. INNER JOIN
SELECT * FROM blog_user INNER JOIN blog_article on blog_user.id=blog_article.id
链接两个表查询
8. LEFT JOIN
SELECT * FROM blog_user LEFT JOIN blog_article on blog_user.id=blog_article.id
select 列名称 from 表1名称 left join 表2名称
on 表1名称.列名称 = 表2名称.列名称;
left join 关键字会从 “左表(表1名称)” 那里返回所有的行,即使在 “右表(表2名称)” 中没有匹配的行
9.right join...on 语法
SELECT * FROM blog_user RIGHT JOIN blog_article on blog_user.id=blog_article.id
right join 关键字会从 右表(community_full_name)那里返回所有的行,即使在 左表(communities)中没有匹配的行。
10.union 语法
SELECT user_name FROM blog_user UNION SELECT type FROM blog_article
select 列名称 from 表1名称
union all
select 列名称 from 表2名称;
union all 操作符和 union 操作符几乎是等效的,不过 union all 操作符会列出所有的值,包括重复的值。
11.select into 语法
(1)把所有的列插入新表
select * into 新表名称 [in externaldatabase] from 旧表名称;
(2)只把希望的列插入新表
select 列名称 into 新表名称 [in externaldatabase] from 旧表名称;
12.SQL 日期
MySQL Date 函数
12、SQL Date 数据类型
MySQL 使用下列数据类型在数据库中存储日期 或 日期/时间值:
(1)date 格式:YYYY-MM-DD
(2)datetime 格式:YYYY-MM-DD HH:MM:SS
(3)timestamp 格式:YYYY-MM-DD HH:MM:SS
(4)year 格式:YYYY 或 YY