1.USE 和SHOW :
MySQL和其他的客户机—服务器的DBMS 一样,在执行命令之前需要登录:
net start mysql;
mysql -u root -p;
执行第一步的时候有时候会报错,提示:
“服务名无效。请键入 NET HELPMSG 2185 以获得更多的帮助。”
这时需要widow+R,打开运行,输入services.msc,在“服务”中找到MySQL,右击属性,查看服务名称,在命令提示符中重新输入争取的服务器即可连接到服务器;
在连接到服务器后,此时是没有任何数据库供你使用的,执行命令前,需要选择或者创建一个数据库,选择一个数据库使用USE关键字:
在选择一个数据库前,可以使用SHOW 关键字查看数据库中的表格信息:
同样的方法可以用来查看表中的列(DESCRIBE columns同样可以做到这一点):
其他还有的show语句还有:
SHOW CREATE "DATABASE名“和SHOW create ”table名“
可以用来显示创建某一数据库或者表格时的语句;
2.SELECT 语句:
最简单的select语句至少包含两个信息:搜索什么、从哪里搜索:
(注:1.返回的数据是没有排序的
2.单条sql语句后不需要带”,“但是加上分号肯定没有坏处
3.Mysql不区分大小写,但默认的规则是关键字用大写,表和列的名字用小写
4.SQL中的空格会被忽略,多行的SQL语句和单行的没有区别)
检索多个列需要在列名后面加上”,“:
检索所有列:使用通配符*:
检索不同的行:
有的时候不需要返回的数据中有重复的值,这时可以使用DISTINCT关键字:
需要注意的是,DISTINCT 关键字不能部分使用,它作用的是全部的列而不仅仅是前置它的列(我理解其实可以认为select和select distinct是两个关键字,一个不忽略重复值,一个忽略重复值)
限制搜索结果(LIMIT)
LIMIT 关键字可以指定返回的行数:
同样可以要求从某一行开始返回多少行,如从第六行开始返回5行(默认第一行是0):
如果行数不够时,则只会返回最多的那么多行,如LIMIT 10,但一共只有7行的话,返回数据就会只有7行。
3.ORDER BY 关键字:
ORDER BY 关键字后可以跟一个或者多个列名,规则和SELECT 后跟多个列名一样,在对多个列名进行排序时,只有在ORDER BY 后第一个列中有多个重复的行时才会对第二列进行排序,否则只会对第一列进行排序:
ORDER BY 关键字可以指定升序降序,升序关键字ASC ,降序关键字DESC,默认是升序:
注:
如果相对多个列进行降序排列,需要在每个列名后加上DESC 关键字(升序也是默认的)。
使用ORDER BY 和LIMIT 关键字可以筛选出最大或者最小的几个数据:
子句的顺序:ORDER BY 语句必须在FROM 语句之后,LIMIT 语句则必须在ORDER BY语句之后,错误的语句顺序也会带来错误。