SQLでゼロ埋めスペース埋めして桁数を揃えたい場合にはLPAD関数やRPAD関数を使用することで取得可能となります。DBMSによっては使用出来ないものもあります。
関数\DBMS MySQL PostgreSQL SQL Server Oracle
LPAD ○ ○ ✕ ○
RPAD ○ ○ ✕ ○
書式は「LPAD(列名,バイト数,’埋め込み文字’)」、「RPAD(列名,バイト数,’埋め込み文字’)」で指定します。第三引数の埋め込み文字を省略すると半角スペースが埋め込まれます。
サンプルではOracleでの使用例となります。
サンプルテーブル
「GOODS」テーブル
LPAD関数の使用例1
項目「GOODS_CODE」を10桁でゼロ埋めするSQL(クエリー)
SELECT LPAD (g.GOODS_CODE , 10, '0' ) FROM USER1.GOODS g;
実行結果
LPAD関数の使用例2
項目「GOODS_CODE」を10桁で全角「*」埋めするSQL(クエリー)
SELECT LPAD (g.NAME , 10, '*' ) FROM USER1.GOODS g;
実行結果 以下のように埋め込み文字へ全角文字を指定すると1文字=2バイト扱いで埋め込まれます。
RPAD関数の使用例1
項目「GOODS_CODE」を10桁でゼロ埋めするSQL(クエリー)
SELECT RPAD (g.GOODS_CODE , 10, '0' ) FROM USER1.GOODS g;
実行結果
RPAD関数の使用例2
項目「GOODS_CODE」を10桁で全角「*」埋めするSQL(クエリー)
SELECT RPAD (g.NAME , 10, '*' ) FROM USER1.GOODS g;
実行結果 RPADでも以下のように埋め込み文字へ全角文字を指定すると1文字=2バイト扱いで埋め込まれます。
Excelで空白(空欄・未入力)セルをカウントするにはCOUNTBLANK関数を使用することで簡単に取得可能です。COUNTBLANK関数は空白セルの有無や数をカウントしたい場合に利用できます。
数値として 0 (ゼロ) を含むセルはカウント対象外です。
空白(空欄・未入力)セルの数をカウントする例
COUNTBLANK関数は「COUNTBLANK(範囲)」で指定します。
以下の例ではB10セルの書式へ「=COUNTBLANK(B2:B8」を指定してB2~B8セルまでの空白セル数を取得しています。
SQLを見てるとたまにWHERE句内で「(+)」と記載されているのを見かけることがあります。
この「(+)」はOracle独自で記載が可能となる外部結合演算子といって、「g.GOODS_CODE = gt.GOODS_CODE(+)」のように指定するとLEFT OUTER JOINと同じ結果を取得することが出来ます。
サンプルテーブル
「GOODS」テーブル
「GOODS_TYPE」テーブル
外部結合演算子を利用したクエリー(SQL)例
SELECT g.name, gt.type_name
FROM USER1.GOODS g, USER1.GOODS_TYPE gt
WHERE g.GOODS_CODE = gt.GOODS_CODE(+);
通常の左外部結合でのクエリー(SQL)例
SELECT g.name, gt.type_name
FROM USER1.GOODS g
LEFT OUTER JOIN USER1.GOODS_TYPE gt ON g.GOODS_CODE = gt.GOODS_CODE;
実行結果
外部結合演算子、左外部結合どちらも同じ結果となります。
本日、レンタルサーバー会社からドメイン料金改定(要はドメイン料金値上がり)のお知らせが届いてました。。
こんなところにも値上がりの波が!?
とメールを見てみるといきなり3割以上も値上がりしてます。。
ドメイン料金なので1年で2614円と考えれば大した金額でもないのですが、突然何故?と思っているとメール文中に「上位組織から提示されるドメイン料金の上昇」と記載されています。
上位組織?と思って調べてみたら
「.com」ドメインのレジストリ管理企業であるVerisignha社(ベリサイン社)は 2020年1月3日にICANNにより公開された「.comレジストリ契約の修正に関する発表」により、 2020年から2029年までの10年間、年間7%・最大70%値上げを行う権利を認められてるとの事。 上記に基づき、Verisign社は2021年9月1日から約7%の卸価格値上げを決定しています。
というのが背景となってました。
メール見てそのまま1年更新でいいかあ程度に考えてましたが、今後も毎年値上げが実施される可能性大というのも考慮すると今のうちに複数年契約した方が良いと判断して最大の5年契約に変更しました。
今後も「.com」ドメインを長期使用予定の方は契約年数を見直したほうがお得かも
「One Commander」はファイルマネージャーアプリでWindows標準のエクスプローラーを利用している方には一度は試してもらいたいソフトの代表格です。使用したら恐らく標準のエクスプローラーには戻れませんw
そういえば標準のエクスプローラーだとWindows11でようやくタブ化されたとか。。
「One Commander」のダウンロード
覚え書き.comから「One Commander 3.5.11」をダウンロード
バージョン:3.5.11.0
ファイルサイズ:43.5M
「One Commander」の主な機能・特徴
デュアルパネル、サイドバイサイドのファイルブラウジング
エクスプローラーのタブ化や改装表示が可能
ファイル作成日の色分け表示
動画、画像、PDF、ソースコードファイルなどのプレビュー表示
お気に入り(BookMark)のグループ化
File Automatorというツールでファイル名の一括変換や画像ファイルのjpegなどへの一括変換なども可能
ライセンス
サポート
本日WordPressで作業していたら以下のような事象が発生しました。
WordPressで記事を更新しようとしても以下のように「更新が失敗しました。返答が正しいJSONレスポンスではありません。」と表示されて更新出来ない
新規で投稿や固定ページを追加しようとしても「Security check failed」と表示されて新規投稿用の画面が表示されない
先日まで投稿できてたのに何故!?
と思いエラーメッセージでググっても「クラシックエディタに変更してみる」とか「パーマリンク設定を基本にする」などは見つかりましたが今ひとつ根本的な解決手段じゃないなあと本日行った作業を思い出してみるとそういばプラグインいくつか更新したな。。と思い出し本日更新したプラグインを一つずつ無効化して確かめてたら。。
プラグイン「WP to Twitter」の更新が原因でした!!
これを無効化したら全て正常に動作したので私の場合は「プラグインの更新で不具合があった」というのが根本原因でした。。
やっぱりプラグイン更新時は動作確認必須だなあと再認識(^_^;)
WP to Twitterのページを見るとバージョン「3.6.0」に更新すると発生します。
サポートフォーラムを見てもまだこの件については何も記載されてないようなのでもう少し対応待つ必要ありそうです。
Wp to Twitterのプラグインページへ
今回は更新したプラグインで不具合があったのが原因でしたが、調べていると他の原因でも「更新が失敗しました。返答が正しいJSONレスポンスではありません。」のメッセージが表示されることがあるようです。まずは正常に更新出来ていた時期~エラーが発生した時期までに更新したことを思い出して一つずつ原因を潰すのが一番近道かなあと思います。あと定期的なバックアップも大事!
他に考えられる原因や対処方法
レンタルサーバー側でなんらかのセキュリティなどの機能が追加されたのが影響した
「.htaccees」の編集で記載ミスがあった。もしくは自動で中身がクリアされてしまっていた。
ブラウザのキャッシュをクリアしたら直った
サーバーのWAFをOFFにしたら直った
trimは通常、文字列の前後の半角スペースを削除して取得する場合に使用する場合が多いと思いますが、引数へLEADING、TRAILING、BOTHを指定することで任意の文字や文字列を削除して取得することが出来ます。
サンプルテーブル
「goods」テーブル
TRIMに引数「LEADING」を指定した場合
TRIMに引数「LEADING」を指定することで文字列の先頭にある任意の文字や文字列を削除することが出来ます。
クエリー(SQL)例
SELECT TRIM (LEADING '商品' From name ) FROM goods ORDER BY id;
実行結果
TRIMに引数「TRAILING」を指定した場合
TRIMに引数「TRAILING」を指定することで文字列の末尾にある任意の文字や文字列を削除することが出来ます。
クエリー(SQL)例
SELECT TRIM (TRAILING 'A' From name ) FROM goods ORDER BY id;
実行結果
TRIMに引数「BOTH」を指定した場合
TRIMに引数「BOTH」を指定することで文字列の先頭と末尾にある任意の文字や文字列を削除することが出来ます。
クエリー(SQL)例
SELECT TRIM (BOTH 'A' From name ) FROM goods ORDER BY id;
実行結果
投稿ナビゲーション
「駑馬十駕」 IT系情報を中心に調べた事をコツコツ綴っています。