MYSQL BENCHMARK函数是最重要的函数之一,下文对该函数的使用进行了详尽的分析,如果您对此感兴趣的话,不妨一看。
下文为您介绍的是MYSQL BENCHMARK函数的语法,及一些MYSQL BENCHMARK函数相关问题的测试,供您参考学习。
- BENCHMARK(count,expr)
- BENCHMARK()函数重复countTimes次执行表达式expr,它可以用于计时MySQL处理表达式有多快。结果值总是0。意欲用于mysql客户,它报告查询的执行时间。
- mysql> select BENCHMARK(1000000,encode("hello","goodbye"));
- +----------------------------------------------+
- | BENCHMARK(1000000,encode("hello","goodbye")) |
- +----------------------------------------------+
- | 0 |
- +----------------------------------------------+
- 1 row in set (4.74 sec)
报告的时间是客户端的经过时间,不是在服务器端的CPU时间。执行BENCHMARK()若干次可能是明智的,并且注意服务器机器的负载有多重来解释结果。
--------------------------------------------------------------------------------
只要我们把参数count 设置大点,那么那执行的时间就会变长。下面我们看看在mysql里执行的效果:
- mysql> select md5( 'test' );
- +----------------------------------+
- | md5( 'test' ) |
- +----------------------------------+
- | 098f6bcd4621d373cade4e832627b4f6 |
- +----------------------------------+
- 1 row in set (0.00 sec) 〈-----------执行时间为0.00 sec
- mysql> select benchmark( 500000, md5( 'test' ) );
- +------------------------------------+
- | benchmark( 500000, md5( 'test' ) ) |
- +------------------------------------+
- | 0 |
- +------------------------------------+
- 1 row in set (6.55 sec) 〈------------执行时间为6.55 sec
由此可以看出使用benchmark执行500000次的时间明显比正常执行时间延长了。
以上就是MYSQL BENCHMARK函数的使用介绍。