1

我安装了 MySQL 4.1 服务器版本。我想在 SELECT 语句中使用“显示查询”作为子查询。例如:

SELECT count(*) from (SHOW VARIABLES LIKE 'log_bin');

但这给了我一个错误,例如:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SHOW VARIABLES LIKE 'log_bin')' at line 1

根据我的理解和对网络的研究,我认为“显示查询”不能用作子查询。

好吧,我遇到了名为 FOUND_ROWS() 的函数。但是这个函数在我做的任何“显示查询”上都会返回 1。例如:

show tables; select FOUND_ROWS();

并给了我这个:

+----------------------+
| Tables_in_test       |
+----------------------+
| test1                |
| test2                |
+----------------------+
2 rows in set (0.00 sec)

+--------------+
| FOUND_ROWS() |
+--------------+
|            1 |
+--------------+
1 row in set (0.00 sec)

由于我使用的是 MySQL 4.1,因此尚未引入 information_schema 数据库。有没有其他方法可以解决我的问题?

条件:

  • 我必须使用 MySQL 4.1
  • 应该使用 MySQL 查询进行计数。
4

1 回答 1

1

您可以使用信息架构

SELECT table_name FROM INFORMATION_SCHEMA.TABLES
 WHERE table_schema = 'db_name'
 [AND table_name LIKE 'urtable']
于 2016-09-16T08:45:11.277 回答