第三章
1、当我们不知道可以使用的数据库名有哪些时?可以使用如下命令查看:
`SHOW DATABASES;`
结果如下:
2、当我们知道了可以使用的数据库时,例如:mysql、information_schema、test等数据库是,如果我们想使用其中的test数据库,应该如何进入了?
- 可以使用如下命令:
USE test;
3、在我们进去了某个数据库之后,可以用如下的命令查看这个数据库有哪些可以利用的表(table):
SHOW TABLES;
4、当我们想知道某个表的结构的时候,应用用如下的命令来查看:
`DESC user;`
5、查看某个表的内容,命令时什么呢?
例如:查看数据库中表user的命令如下:
select * from user;
6、上面的 * 号直接将所有的列进行了显示,而如果我们只想看到id号那一列的,应该怎么做?
`select id from user;`
7、如果想看 某几列,命令格式如下:
`select id ,name from user;`
从上图可以看出,那一列在前面,就显示在前面。
插入
为看便于其它查询命令的讲解,将先在表中插入一些数据,便于下面进行操作。
插入的命令如下:
语法
INSERT INTO 表名称 VALUES (值1, 值2,….)
我们也可以指定所要插入数据的列:
INSERT INTO table_name (列1, 列2,…) VALUES (值1, 值2,….)
8、当我们只想显示某个表中前几行,或者是从第几行到第几行,则需要用关键字limit来进行限制。
命令格式如下:
select * from table_name limit N;//limit N 指示MySQL至多显示N行数据,默认从零开始
select * from table_name limit M,N;//limit M,N 指示MySQL从行M开始的N行数据。注意:行号是从零开始
举例子如下:
select * from user limit 2;//只显示表中的前两行内容
select * from user limit 2,3;//只显示表中从第2行开始的3条内容。
9、当我们想让显示出来的内容均不相同时,或者说过滤掉那些相同的行数据,应该使用DISTINCT关键字
`select distinct name from user;`
注意:distinct 关键字应用于所有列而不仅是前置它的列。如果给出select distinct id ,name from user;
除非指定的两个列id、name均不相同时,否则所有行都将被检索出来。
10、使用完全限定的表名
上面的例子都是通过列名来引用列,然后也可以使用完全限定的名字来引用列(同时使用表名和列名),如下:
select tableName.colName from tableName;