##対象
SQLに触れて1年経ちました~!
知れば知るほど奥の深いSQLの世界で学んだことを共有できればと思います!
##結論
SQLと他言語の違いは以下の通りです。
言語 | グループ |
---|---|
SQL | 集合指向言語 |
Python | 手続き型言語 |
PHP | 手続き型言語 |
Ruby | 手続き型言語 |
--- | --- |
手続き型言語にはさまざまな種類がありますが、
SQLはそれらと一線を画した集合指向言語なのです。
##手続き型言語と集合指向型言語の違いって何?
-
手続き型言語
多数の異なる手続きの実行順序を記述する。
言語思想的にいうと「データを繰り返して処理するために、ループ構文が簡単に書けます!!」という考え。
例)和食の大将が一品一品こだわって料理を作っていくイメージ。一品に対する調理手順が決まっている感じ。 -
集合指向型言語
指定範囲して同じ操作を一度に適用する。
言語思想的にいうと「ループ構文使わないで、繰り返し処理ができるように、データを定型化しよう!!」という考え。
例)洋食のシェフが厨房で大量の料理を作っていくイメージ。大将のように一品一品料理していたら時間がないため、食材Aと食材Bまでは同じ手順で調理、それ以外は別の手順で調理する感じ。
##最後に
僕の今回の学びは「SQLは他言語と設計思想が違う」ことです。
まだまだ見習いシェフですね。
やっぱりSQLって面白いです。