Oracle和MySQL中短小精悍的SQL

时间:2022-05-05
本文章向大家介绍Oracle和MySQL中短小精悍的SQL,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

如果让你写一个简单牛叉的SQL,数据库类型不限,你会写出什么样的SQL语句。

Oracle

如果是Oracle,我就写个drop table dual;

这个SQL看起来很简单,包含的信息量还是蛮大的,首先对于dual表你得有一定的认识和了解,而这个视图和一般的数据字典不同,如果删除之后,直接会导致数据库不可用。恢复起来需要一个隐含参数来调整。

当然如果想换一个角度来,写出一些含有人生哲理的SQL来,这方面得下不少功夫了。

我想了一个,比如Flashback database to sysdate-1/24/60;

这个我想表达的意思就是,数据库可以闪回到一分钟前,而我们的人生不会,统统不会。

MySQL

MySQL的角度来写几个这方面的SQL自己还真想了不少,但是感觉都不是很满意,直到我看到了jeremycole 提供的一个MySQL性能测试语句,简单但是威力很大。

github上可以看到 https://github.com/jeremycole/yesmark

语句就一行:

yes "DO 0;" | mysql >/dev/null &

如果想开个并行,那也不是事儿,比如开16个并发。

for i in {1..16}; do yes "DO 0;" | mysql > /dev/null & done

这样的语句真实短小精悍。

我呢,也算是抛砖引玉了,大家有什么好的想法,欢迎留言。