11个为Linux用户提前MySQL数据库“面试问题和答案”

在本文中,我们将专注于MySQL的实践方面,面试方面的相关问题。

我们已经发表了两篇文章的MySQL由Howtoing社区欢迎和好评。这是MySQL面试系列的第三篇文章和面试类型专栏的十六章。
  1. 15个基本MySQL面试问题
  2. 10个中间体的MySQL数据库面试问题
MySQL面试问题

11 MySQL面试问题

我们已经到达这里,因为你的支持,我们寻求在未来的形式你的目的一样。在本文中,我们将专注于MySQL的实践方面,面试方面的相关问题。
1.使用SELECT语句查找正在运行的服务器的版本,并打印当前数据库的名称?
答:以下MySQL命令会显示服务器版本和当前选定的数据库。
mysql> SELECT VERSION(), DATABASE();
+-------------------------+------------+
| VERSION()               | DATABASE() |
+-------------------------+------------+
| 5.5.34-0ubuntu0.13.10.1 | NULL       |
+-------------------------+------------+
1 row in set (0.06 sec)
在数据库列它显示NULL值,因为我们没有选择任何数据库。所以,选择数据库,如下面的命令所示。
mysql> use Howtoing;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> select VERSION(), DATABASE();
+-------------------------+------------+
| VERSION()               | DATABASE() |
+-------------------------+------------+
| 5.5.34-0ubuntu0.13.10.1 | howtoing    |
+-------------------------+------------+
1 row in set (0.00 sec)
2.使用NOT运算符(!)从表中选择除“SAM”以外的所有用户“Howtoing”
答:以下语句将显示所有的表'Howtoing“除了用户的SAM”用户的所有列。
mysql> SELECT * FROM Howtoing WHERE user !=SAM;
+---------------------+---------+---------+---------+---------+-------+ 
| date                | user    | host 	 | root     | local   | size  | 
+---------------------+---------+---------+---------+---------+-------+ 
| 2001-05-14 14:42:21 | Anthony | venus  | barb     | venus   | 98151 | 
| 2001-05-15 08:50:57 | TIM     | venus  | phil     | venus   | 978   | 
+---------------------+---------+---------+---------+---------+-------+
可以用NOT(!)运算符实现“AND”。
答:当我们使用AND运算符(=),当我们使用(=!)操作员或使用。 (=)与AND运算符的示例。
mysql> SELECT * FROM mail WHERE user = SAM AND root = phil
(!=)带OR运算符的示例。
mysql> SELECT * FROM mail WHERE user != SAM OR root != phil
+---------------------+---------+---------+---------+---------+-------+ 
| date                | user    | host    | root    | local   | size  | 
+---------------------+---------+---------+---------+---------+-------+ 
| 2001-05-14 14:42:21 | Anthony | venus   | barb    | venus   | 98151 | 
+---------------------+---------+---------+---------+---------+-------+
  1. =:指等于
  2. !=:不等于
  3. 代表的不操作
AND&OR在MySQL中被视为联接运算符。
4.在MySQL中使用什么IFNULL()语句?
答:在MySQL中查询可以精确地使用IFNULL()语句来写。 IFNULL()语句测试其第一个参数,如果它不为NULL则返回,否则返回其第二个参数。
mysql> SELECT name, IFNULL(id,'Unknown') AS 'id' FROM taxpayer;
+---------+---------+ 
| name 	  | id      | 
+---------+---------+ 
| bernina | 198-48  | 
| bertha  | Unknown | 
| ben     | Unknown | 
| bill    | 475-83  | 
+---------+---------+
5.您只想从结果集的开始或结尾查看结果集中的某些行。你会怎么做?
答:我们需要使用LIMIT子句与ORDER BY一起实现上述场景。
显示1条记录
mysql> SELECT * FROM name LIMIT 1;
+----+------+------------+-------+----------------------+------+ 
| id | name | birth      | color | foods                | cats | 
+----+------+------------+-------+----------------------+------+ 
| 1  | Fred | 1970-04-13 | black | lutefisk,fadge,pizza | 0    | 
+----+------+------------+-------+----------------------+------+
显示5记录
mysql> SELECT * FROM profile LIMIT 5;
+----+------+------------+-------+-----------------------+------+ 
| id | name | birth      | color | foods                 | cats | 
+----+------+------------+-------+-----------------------+------+ 
| 1  | Fred | 1970-04-13 | black | lutefisk,fadge,pizza  | 0    | 
| 2  | Mort | 1969-09-30 | white | burrito,curry,eggroll | 3    | 
| 3  | Brit | 1957-12-01 | red   | burrito,curry,pizza   | 1    |   
| 4  | Carl | 1973-11-02 | red   | eggroll,pizza         | 4    | 
| 5  | Sean | 1963-07-04 | blue  | burrito,curry         | 5    | 
+----+------+------------+-------+-----------------------+------+
mysql> SELECT * FROM profile ORDER BY birth LIMIT 1;
+----+------+------------+-------+----------------+------+ 
| id | name | birth      | color | foods          | cats | 
+----+------+------------+-------+----------------+------+ 
| 9  | Dick | 1952-08-20 | green | lutefisk,fadge | 0    | 
+----+------+------------+-------+----------------+------+
6. Oracle与MySQL。哪一个和为什么?
答:嗯既有它的优点和缺点。作为时间问题我喜欢MySQL。
选择原因MySQL over oracle
  1. Mysql是FOSS。
  2. MySQL是可移植的。
  3. MYSQL支持GUI和命令提示符。
  4. 通过查询浏览器支持MySQL管理。
7.如何获取MySQL中的当前日期?
答:获得当前日期在MySQL中是执行下面的SELECT语句一样简单。
mysql> SELECT CURRENT_DATE();
+----------------+
| CURRENT_DATE() |
+----------------+
| 2014-06-17     |
+----------------+
8.如何在MySQL中将表导出为XML文件?
答:我们使用'-e'(出口)选项,MySQL表或整个数据库导出到一个XML文件中。对于大表,我们可能需要手动实现它,但对于小表,像phpMyAdmin这样的应用程序可以完成这项工作。 MySQL的本机命令可以做到。
mysql -u USER_NAME –xml -e 'SELECT * FROM table_name' > table_name.xml
其中USER_NAME是Database的用户名,table_name是我们导出到XML的表,table_name.xml是存储数据的xml文件。
什么是MySQL_pconnect?它和MySQL_connect有什么不同?
答:MySQL_pconnect()打开即持续到MySQL数据库它只是意味着数据库未打开每一次页面加载,因此我们不能用MySQL_close()来关闭持久连接的连接。 MySQL_pconnect和MySQL_connect之间的简单区别是。 与MySQL_pconnect不同,MySQL_connect - 每次加载页面时打开数据库,可以使用语句MySQL_close()随时关闭页面。
10.你需要显示一个表中定义的所有索引说'user'的数据库说'mysql'。你将如何实现这一目标?
答:以下命令将显示一个表“用户”的所有索引。
mysql> show index from user;
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ 
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | 
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ 
| user  |          0 | PRIMARY  |            1 | Host        | A         |        NULL |     NULL | NULL   |      | BTREE      |         |               | 
| user  |          0 | PRIMARY  |            2 | User        | A         |           4 |     NULL | NULL   |      | BTREE      |         |               | 
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ 
2 rows in set (0.00 sec)
什么是CSV表?
答:CSV表示逗号分隔值又名字符分隔值。 CSV表以纯文本和表格格式存储数据。它通常每行包含一条记录。 每个记录由特定分隔符(逗号,分号,...)分隔,其中每个记录具有相同的字段序列。 CSV表格最常用于将手机联系人存储为导入和导出,并可用于存储任何类型的纯文本数据。 目前为止就这样了。我会再次在这里有另一个有趣的文章,你的人会喜欢阅读。直到然后,请继续关注和连接到Howtoing和不要忘记在下面的评论部分为我们提供您的宝贵的反馈。