1. 程式人生 > 其它 >Oracle和MySQL中短小精悍的SQL

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

這樣的語句真實短小精悍。

我呢,也算是拋磚引玉了,大家有什麼好的想法,歡迎留言。