管理者 のすべての投稿

SQL:TRIM関数を使って任意の文字や文字列を削除する方法

trimは通常、文字列の前後の半角スペースを削除して取得する場合に使用する場合が多いと思いますが、引数へLEADING、TRAILING、BOTHを指定することで任意の文字や文字列を削除して取得することが出来ます。

サンプルテーブル

  • 「goods」テーブル

TRIMに引数「LEADING」を指定した場合

TRIMに引数「LEADING」を指定することで文字列の先頭にある任意の文字や文字列を削除することが出来ます。

  • クエリー(SQL)例
  • 実行結果

TRIMに引数「TRAILING」を指定した場合

TRIMに引数「TRAILING」を指定することで文字列の末尾にある任意の文字や文字列を削除することが出来ます。

  • クエリー(SQL)例
  • 実行結果

TRIMに引数「BOTH」を指定した場合

TRIMに引数「BOTH」を指定することで文字列の先頭と末尾にある任意の文字や文字列を削除することが出来ます。

  • クエリー(SQL)例
  • 実行結果

Excel:xxヶ月後の月末日付を表示する方法

Excelでxxヶ月の月末日付を取得するにはEOMONTH関数を使用することで可能となります。

xxヶ月後の月末日付を取得する方法

EOMONTH関数は「EOMONTH(開始日, 月)」の書式で指定します。

以下の例ではB1セル「本日の日付」の5ヶ月後の月末日をB2セルへ表示しています。

B2セルは日付型にして書式には「=EOMONTH(B1,5)」を入力しています。

B列の書式

🧠 補足:便利な使い方・応用パターン

以下は、記事には明記されていないが、実務で役立つ応用例・注意点です。

・“今月末”を基準に何ヶ月後の月末を得る

例えば「今月(この月)の末日」から数ヶ月先の月末日を出したい場合、

 
=EOMONTH(TODAY(), 0) ' 今月末日 =EOMONTH(TODAY(), 3) ' 3ヶ月後の月末日

となります。TODAY() で“今日”を開始日とすれば、データ更新を自動化できます。

・「次回支払日」を「3ヶ月おき」「半年おき」などで設定する

月次/隔月/四半期等の支払スケジュール管理に、EOMONTHを使うのが有効です。例えば「支払開始月」+「毎3ヶ月」の繰り返し。
例:

=EOMONTH(開始月セル, (回数-1)*3 )

のような形で回数を掛けて月数を変化させることができます。

・“月末”ではなく“月の特定日”を使いたい場合は?

もし “xxヶ月後の20日” や “xxヶ月後の5営業日” というような条件であれば、EOMONTHの結果に対して日付の調整を加える必要があります。
例:

=DATE(YEAR(EOMONTH(B1,3)), MONTH(EOMONTH(B1,3)), 20)

などで「3ヶ月後の月の20日」を出せます。

・「月末」が祝日・休日と重なる場合の対応

月末日が土日祝日の場合、「翌営業日」や「前営業日」に移動したい場合には、別途関数(例えば WORKDAY や NETWORKDAYS 等)を組み合わせる必要があります。EOMONTH 単体では「月末日=カレンダー上の最後の日」を返すのみです。

・マイナス月数を指定して「過去の月末日」を取得

例えば「3ヶ月前の月末日」を出したいなら、月数に負の数を指定します。

=EOMONTH(B1, -3)

これで “開始日から3ヶ月前の月の月末日” を取得できます。


⚠️ 注意点・落とし穴

  • 開始日セルが「日付型」でないと、思った通りに動かないことがあります。文字列や「2025/11」などの形式ではエラーやずれが生じることがあります。

  • システムの地域設定やExcelのバージョンによって日付の解釈が異なる場合があります。特に月/日/年の並びが異なる国では注意。

  • 「xヶ月後」の“月末”が翌月にずれてしまうケース(例えば、「1月31日」+1ヶ月後 →「2月28/29日」)は、EOMONTHでは正しく“2月末日”として処理されますが、この挙動を知らないと誤解しやすいです。

  • Excel Online やExcel for Mac/Windows版で若干の動作差が出ることがありますが、EOMONTH自体は標準関数なので大きな違いは少ないです。


🔍 さらに便利にするコツ

  • 入力規則(データ検証) を使って、開始日セルに「日付のみ入力可」と制限をかけておくと、誤入力によるエラーが防げます。

  • 「何ヶ月後」の“何”を別セルに入力して可変にしておくと、同じ数式で複数パターンを作れます。例えば、C1セルに “3” を入れて、

     
    =EOMONTH(B1, C1)

    とすれば、数値を変えるだけで出力先が変わるので便利です。

  • 月末日以外の“月の第一営業日”や“最終営業日”を出したい場合、EOMONTHと組み合わせて WORKDAY/WORKDAY.INTL 関数を使うと自由度が高まります。

  • 出力された「月末日」を元に、「この月からxx日後」や「翌月xx日」などに派生させることで予算計画・支払スケジュール・契約更新等に活用できます。

SQL:大文字 ⇒ 小文字、小文字 ⇒ 大文字へ変換する方法

SQLで大文字⇒小文字に変換する場合はLCASE関数 or LOWER関数、小文字⇒大文字へ変換するにはUCASE関数 or UPPER関数を使用します。DBMS毎で使用出来る関数が異なるので整理しておきます。

サンプルではPostgreSQLでの使用例となります。

 

関数\DBMSMySQLPostgreSQLSQL ServerOracle
UCASE
※小文字 ⇒ 大文字
UPPER
※小文字 ⇒ 大文字
LCASE
※大文字 ⇒ 小文字
LOWER
※大文字 ⇒ 小文字
 

サンプルテーブル

  • 「goods」テーブル

UPPER関数(小文字 ⇒ 大文字へ変換)の使用例

  • クエリー(SQL)例
  • 実行結果

LOWER関数(大文字 ⇒ 小文字へ変換)の使用例

  • クエリー(SQL)例
  • 実行結果

自分のホームページ(ブログ)へTwitterのフォーローボタンを設置する方法

Twitterのフォローボタンを設置する方法は、Twitter Publishページで自分のツイートのタイムラインやフォローボタンを自動生成してくれる機能があるのでそちらから簡単に作成可能となります。

TwitterのPublishページ

Twitterのフォローボタンの作成手順

  1. TwitterのPublishページを表示して自分のTwitterのURLを入力してEnter
  2. 「Twitter Buttons」を選択します。
  3. 「Follow Button」を選択します。
  4. カスタマイズしたい場合は「set customization options」のリンクをクリックしてカスタマイズ画面を表示させることでボタンサイズやアカウント名の表示有無などを設定できます。設定が完了したら「Update」ボタンを選択します。
  5. あとは表示されたソースコードを「Copy Code」ボタンを選択してコピーして自分のホームページなどに貼り付ければ設置は完了です。

設定例

  • ソースコードを貼り付けると以下のようなフォローボタンが表示されます。
    • デフォルト状態:
    • ボタンを大きくした場合:
    • ユーザー名を非表示した場合:
    • ユーザー名を非表示でボタンを大きくした場合:
    • 公式のカスタマイズではフォロワー数表示は制御できないのですが、ソースコードの「data-show-count=”false”」を「data-show-count=”true”」に変更することでフォロワー数を吹き出し表示させることも出来ます。
      フォロワー数を表示させた場合:

SQLで一部の文字列を取得する方法

SQLで一部の文字列を取得するにはSUBSTR関数やLEFT関数、RIGHT関数を使用することで可能となります。DBMS毎に利用できる関数に違いがありOracleではLEFT関数、RIGHT関数は使用出来ません。

関数\DBMSMySQLPostgreSQLSQL ServerOracle
SUBSTR or SUBSTRING
LEFT
RIGHT
 

サンプルテーブル

  • 「goods」テーブル

SUBSTR関数の使用例

LEFT関数の使用例

RIGHT関数の使用例

Excel:自動で連番を振る方法

Excelで連番を振る方法はいくつかあるのでメモしておきます。

【方法1】セルの右下を選択してそのままCtrlキー押下したままドラッグする方法

  1. 最初に1など数値を入力しておき、そのセルの右下の小さな■マークをマウスポインタで選択します。
  2. Ctrlキーを押下したまま連番を振りたい方向にドラッグすると連番が自動的に振られます。セルの書式が標準や数値ならCtrlキーの押下が必要となり、書式が文字列ならCtrlキーの押下は不要です。

【方法2】ROW()関数を使用する方法

  • 連番を振りたいセルに「=ROW()」関数を指定することで該当セルの行番号に相当する数値を表示できます。ただROWだけではシートの3行目に指定すると「3」と表示されてしまうので、途中から連番振りたい場合には開始連番が1になるように「=ROW()-2」などとするケースが多いです。以下の例ではA2セルの書式に「=ROW()-1」と設定しています。

【方法3】ROW()関数を応用して使用する方法

  • 方法2では連番設定したあとに上の行に行追加や行削除すると開始連番がずれてしまうというデメリットがあります。その都度マイナスする値を変更するのは面倒なので行追加や行削除されても連番が変わらないようにする方法がROW() からマイナスする値を開始行のセル番号を固定指定して+1する方法です。以下の例ではA2セルの書式に「=ROW()-ROW($A$2)+1」と入力しています。この指定方法であればA2セルをそのまま他の行へコピペしても連番はインクリメントされて連番表示され、行追加や行削除されても連番はそのままで維持出来るので個人的にこの方法を愛用してます。

リモートデスクトップ接続での接続を簡単にするリモートデスクトップファイル「*.rdp」ファイルの作成方法

テレワーク(リモートワーク)などでシンクラ環境を使用する場合などはリモートデスクトップでの接続を経由してアクセスしていると思いますが、毎回リモートデスクトップを起動して接続先を選択して~とかしなくてもリモートデスクトップでの接続情報を保存した「.rdp」ファイルを実行することでリモートデスクトップでの接続が楽になるのでメモしておきます。

リモートデスクトップファイル「.rdp」ファイルの作成方法

  1. リモートデスクトップ接続を起動して左下の「オプション」を選択します。
  2. 接続先のコンピューターやユーザー名を入力後、「名前を付けて保存」を選択します。
  3. 保存するrdpのファイルを指定して「保存」ボタンを選択すればリモートデスクトップファイル「*.rdp」ファイルが作成完了です。
  4. 作成した「*.rdp」ファイルを実行するとリモートデスクトップ接続を起動して接続ボタンを選択した時と同様に動作するので接続作業が楽になります。

 

ExcelやWordのOfficeユーザー名を設定する方法

よく会社などでファイルサーバー上にあるExcelファイルなどを複数人で使用している場合、誰かがそのファイルを開いてると自分が開こうとしても編集出来ないことはよくあります。そういう時にユーザー名をきちんと設定していれば誰が開いているのかすぐ分かるのですが、初期設定時に設定していないと「使用者は’Windwosユーザー’です。」というように表示され「誰っ?」となることもよくあります。地味にストレス溜まることなのでOfficeのユーザー名はきちんと設定しておきましょう。。

Officeのユーザー名を設定する手順

  1. メニューの「ファイル」を選択します。
  2. 左側のメニューから「オプション」を選択します。
  3. 「Microsoft Officeのユーザー設定」欄の「ユーザー名」へ入力して「OK」ボタンを選択すれば設定完了です。一度Excelで設定してしまえば他のWordなどのOfficeソフトも共有されるのでソフト毎に設定する必要はありません。

 

 

SQLで文字列置換や文字置換する方法

SQLで文字列置換をするにはREPLACE関数を使用することで可能となります。類似の関数にTRANSLATE関数がありますが、こちらは文字列単位ではなく1文字ずつ文字単位で置換します。

ここではPostgreSQLでの実行サンプルをベースに説明していきます。

サンプルテーブル

  • 「goods」テーブル

REPLACE関数の使用例

TRANSLATE関数の使用例

SQLで文字列を結合(連結)する方法

SQLで文字列を結合(連結)して取得するためにはCONCAT関数やCONCAT_WS関数、文字列結合子「||」を使用することで可能となります。DBMS毎で微妙に違いはありますが、ここではPostgreSQLでの実行サンプルをベースに説明していきます。

サンプルテーブル

  • 「goods」テーブル

CONCAT関数の使用例

文字列結合子「||」の使用例

CONCAT_WS関数の使用例