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関数の使用例

Microsoft Office 365のOutlook(ブラウザ版)で署名設定する方法

ブラウザからMicrosoftカウントにログインしてOutlookを起動するとメール作成時などの署名を設定する箇所が分かりにくかったので設定方法をメモしておきます。

Outlook(ブラウザ版)での署名設定手順

  1. Outlookの画面右上の「設定」ボタンを選択して、設定画面の一番下に表示されている「Outlookのすべての設定を表示」を選択します。
  2. 設定画面のメニュー「作成と返信」を選択し、署名の名前や内容、新規メッセージの既定設定、返信/転送時の既定設定をそれぞれ設定します。
  3. 署名の設定が完了したら「保存」ボタンを選択して保存すれば署名の設定が完了です。
  4. 以下の様に新しいメッセージを作成してみると設定した署名がデフォルト表示されていることが確認できます。

HTML:番号付きリストの開始番号を変更する方法

HTMLで番号付きリストを表示するのは<ol>タグの中に<li>タグを記述することで表現できますが、<ol>タグにreversed属性やstart属性、type属性を付与することで表示される番号を操作することが出来ます。

<ol>タグに何も属性付けない場合

HTML

表示結果

  1. パソコン
  2. テレビ
  3. ソファー

 

<ol>タグにreversed属性を付けた場合

HTML

表示結果

  1. パソコン
  2. テレビ
  3. ソファー

 

<ol>タグにstart属性を付けた場合

HTML

表示結果

  1. パソコン
  2. テレビ
  3. ソファー

<ol>タグにtype属性を付けた場合

HTML

表示結果

  1. パソコン
  2. テレビ
  3. ソファー

Excel:行と列の入れ替え方法

Excelで行と列の入れ替え方法についてメモしておきます。

行と列の入れ替え手順

下記表(A1:D4)の行と列を入れ替えてみます。

  1. 入れ替えたい範囲を選択して対象のセルをコピーします。
  2. 貼り付け先のセルを選択して右クリックして「形式を選択して貼り付け」を選択します。
  3. 「行列を入れ替える」をチェックしてOKボタンを選択します。
  4. 以上で以下のように行と列が入れ替わって表示されます。

 

 

SQL:UNION、UNION ALL演算子の使用方法

SQLで複数のSELECTで問い合わせた結果を連結したいという場合は集合演算子関数と言われる「UNION」や「UNION ALL」演算子を使用することで取得可能となります。

イメージ図

  • UNIONは重複行を削除して取得するので「A & C」を取得出来ます。
  • UNION ALLは重複行を含めて取得するので「A & B & C」を取得出来ます。

サンプルテーブル

UNIONの使用例

サンプルテーブル「goods」をUNIONで連結して取得するサンプルとなります。

  • SQL(クエリー)
  • 出力結果

UNION ALLの使用例

サンプルテーブル「goods」をUNION ALLで連結して取得するサンプルとなります。

  • SQL(クエリー)
  • 出力結果