0

既存の列に基づいて列を計算していtablesます。しかし、それを行う方法がわかりません。

私の問題を説明するために、2つの列A、Bが両方ともintであるテーブルがあるとしましょう。私が今していることは、

Select A,B (A-B)as C from Table

適用したいチェックは

C がゼロより小さい場合、ゼロと表示されます。むしろ負の値です。

SQLで行う方法は何ですか

4

4 に答える 4

1

これを試して、

  Select A,B ,case when(A-B)< 0 then 0 else (A-B) end as C from Table;
于 2013-01-02T05:43:20.963 に答える
1
Select A,B,
CASE WHEN (A-B) < 0 THEN 0
ELSE (A-B)
END as C 
from Table

ラージ

于 2013-01-02T05:43:52.117 に答える
1

CASE (Transact-SQL)を使用する必要があります

これはあなたが望むものです:

select A,B,
case when(A-B) < 0 then 0 else (A-B) end as c 
from Table

デモ: SQL フィドル

于 2013-01-02T05:45:18.587 に答える
1
    try this

    select a,b,(a-b < 0 , 0 , a-b) as c from <table>
    // if then usage in mysql

    SELECT a,b,if(a-b < 0;0;a-b) as c FROM <table>
    // if then usage in sql

    // ie. if a-b is less than 0 then 0 else a-b 
于 2013-01-02T05:45:22.340 に答える