【SQL】 ー(マイナス)演算子の使い方(減算する)

演算子
この記事は約3分で読めます。
スポンサーリンク

【SQL】 ー(マイナス)演算子の使い方(減算する)

-(マイナス)演算子は、以下で使用できます。
ORACLE  MS-SQL  MS-Access

-(マイナス)演算子 : 書式

ORACLE MS-SQL MSAccess
<数値式> - <数値式>

<日付式> - <数値式>
ORACLE
<日付式> - <日付式>

-(マイナス)演算子 : 解説

-(マイナス)演算子は、値の引き算を行います。RDBMS製品により異なりますが、さまざまなデータ型で引き算をすることができます。

データ型が数値の引き算では、左辺の値から右辺の値を引き、減算した数値を求めることができます。

-(マイナス)演算子 : 使用例

SQL文 SELECT a, b, a-b diff FROM material;

実行結果

a bdiff
30327
15213
24816
1266

また、日付型の値から数値型の値を引くこともできます。この場合、日付型の値から、数値型の値の日数が引かれます。

SQL文
ORACLE 
SELECT sysdate, sysdate-7 FROM dual;
MS-SQL SELECT GETDATE(), GETDATE()-7;

実行結果

SYSDATE SYSDATE-7
20-06-2520-06-18

しかし、+演算子でも同様ですが、-演算子を使って日付型の値と数値型の値を引くのには面倒な問題があります。それは、月単位で日付がいつなのかを求めたい場合です。1年間の各月は1か月の日数が異なります。そのため、どの値を引いたらよいのかわからない場合があります。もしも月単位の計算をしたい場合には、ADD_MONTH関数DATEADD関数で負の値を指定して使うのが良いでしょう。

【SQL・ORACLE】 ADD_MONTHの使い方(月数を加減する)
ADD_MONTH関数は、日付型のデータに対して「nか月」をプラスマイナスした日付を求める関数です。ADD_MONTH関数は、オラクルで使用できます。いちれべ.comは、オラクル、MS-SQL、MS-Access で使用可能か一目でわかるページです。
【SQL】 DATEADD関数の使い方(指定した期間を加減する)
DATEADD関数は、日付型のデータに対して一定の期間を加減する関数です。この関数で引数に指定する日付要素により、さまざまな期間を加減することができます。第2引数にプラスの値をすると加算、マイナスの値を指定すると減算となります。

また、Oracleでは日付型同士の減算もできます。このとき、日単位の数値が実数で返ってきます。

現在の日付である「SYSDATE」から記念日である「a_date」を引くことで、記念日が何日前なのかを知ることができます。
タイトルとURLをコピーしました