1.mysql -u root -p (连接数据库,root为用户名,回车后输入密码)
2.show databases; (展示所有数据库)(注:后面分号不要省略)
3.use student; (使用哪个数据库)
4.show tables; (展示数据库中所有表)
5.select * from stu_score; (查看表)
DROP TABLE IF EXISTS ims_xc_lv_cart; (删除单个表语句)
6.https://blog.csdn.net/congzi0424/article/details/51382252 ( 使用mysql命令窗口查看中文数据乱码的解决办法)
7.mysql字段decimal(9,2)中9是定点精度,2是小数位数。
存在这么一个公式:decimal(a,b)。 (最大9位数字,其中两位小数)
8.sex enum('是' , '否');
sex
字段只允许插入 ‘是’,‘否’中的其中之一,不在范围内的值会报错。
在查询时 where sex='是'和where sex=1是等效的
9.union all
select 1和select 2的结果加起来,并且不处理重复项。
比如:select 1返回的是为:1,2,3,select 2返回的值为2,4,5,那么整个这句话返回的值为:1,2,3,2,4,5
例:SELECT column1, column2 from table1 union (all) select column1, column2 from table2
以上语句要求量表的column1字段类型相同,column2类型相同。而且每个查询的数目都是一样的。UNION ALL和UNION的差别就在ALL上面,第一个叫联合所有,说明会显示前后两个查询所有的数据,
而UNION没有ALL(所有)这个单词,实现将前后两个查询的数据联合到一起后,去掉重复的数据显示。
10. left join ,right join ,inner join 联表查询 (LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。)
例:
SELECT t.id,t.admin_name,t.remark,t.area_code,t1.zone_name FROM ym_admin t
LEFT JOIN ym_belong_zone t1 ON t.area_code = t1.zone_tag
ORDER BY t.id DESC
11.数据库多表联查语句(1对多):
(1) select a.*,b.brand_name from p39_goods a left join p39_brand b on a.brand_id=b.id (外连)
(2) select * from p39_goods a,p39_brand b where a.brand_id=b.id (内连:没有连接的记录就取不出来,所以只取出了一条)
12. mysql 如何删除数据库中所有的表
SELECT concat('DROP TABLE IF EXISTS ', table_name, ';')
FROM information_schema.tables
WHERE table_schema = 'mydb';
mydb换成你想删除的数据库的名字
这样可以生成一个批量处理的sql语句,你需要再运行一次这个结果集
就可以删除所有的表而不删除数据库了
13.查看mysql版本 select version();
14.启动,关闭服务
输入mysql命令行的服务启用命令:
net start mysql (对应的服务关闭命令为 net stop mysql)
15.修改数据库的字段
update oa_estate_need set uid='xiao' where id<30;
16. 更改数据库表的某个字段的前50条数据
UPDATE oa_estate_need SET uid = 'xiao' order by id desc limit 50
UPDATE oa_estate_need
SET uid = 'xiao'
WHERE
id IN ( SELECT id FROM ( SELECT id FROM oa_estate_need ORDER BY id DESC LIMIT 1 ) b ) b是表的别名,把查询的内容当做条件,生成一个别名表
17.SELECT type1 from ims_sudu8_page_pt_pro_val WHERE pid = 11 GROUP BY type1 ORDER BY type1 desc
18.
常用聚合函数
- count() 计数
- sum() 求和
- avg() 平均数
- max() 最大值
- min() 最小值
19.
SELECT uid,open_id,nick_name,avatar_url, count( open_id) 人数 from oa_user_house_log WHERE uid = 'ygy' GROUP BY open_id ORDER BY 人数 desc
SELECT uid,open_id,nick_name,avatar_url,house_id,house_address,house_type,count(open_id) times FROM `oa_user_house_log` WHERE `uid` = 'ygy' AND `open_id` IS NOT NULL GROUP BY `open_id` ORDER BY `times` DESC
20.
SELECT * FROM ims_sudu8_page_products ORDER BY id desc limit 0,50
SELECT count(*) from ims_sudu8_page_products
order by id desc limit 0,10 按照id的倒序排序 取出前10条
order by id limit 5,10 按照id的正序排序 从第5条开始取10条
21.添加语句
INSERT INTO table_name ( field1, field2,...fieldN )
VALUES
( value1, value2,...valueN );