Oracleでページング処理

Web系のシステムで利用されるDBは、PostgresqlやMySQLがあります。MySQLは有償化しましたがそのフォークであるMariaDBが無償で使えるのでいつも便利に使っています。 何が便利なのかというとWebの世界で育ってきたということもあるのでとても便利に使えます。 ページング(ページネーション) いくつか便利な点がありますがそのうちの一つが「ページング」です。 MySQLだと先頭の100件取得するには以下の通り LIMITで取得する件数、OFFSETで何件目から取得するかを指定です。カウントは0から始まるので0を指定すると1件目から。 これをOracleで行うと以下となります。

MySQL(MariaDB)のSQLでspaceship(宇宙船)発見

  MySQLの比較演算子に <=> こんなの発見しました。 これ、spaceship operatorっていうみたいです。見た目が、spaceshipだからですね。   機能としては、field_a = ? と?には何らかのデータが入るとして、もし、データがない場合は、NULLとなりますが、NULLだと filed_a = NULLとなってsyntax error。正しくは、field_a Is NULLとしなければなりません。 これを許可する(Nullable)ものが <=>です。 field_a <=> NULL と書けるようになるというものです。 通常の比較演算子としても機能するので、 field_a <=> 123 と field_a = 123は等価ということですね。   すっごく便利なんですが、初級 […]