вставка, если в запросе выбора - PullRequest
4 голосов
/ 19 января 2010

Как я могу сделать что-то подобное?

SELECT    (IF(SUM(Costo) > 0) SUM(Costo) ELSE 0) AS Expr1
FROM         TDP_NotaSpeseSezB

Ответы [ 3 ]

4 голосов
/ 19 января 2010

Вы хотите использовать оператор CASE.

Select 
  CASE WHEN SUM(Costo) > 0 THEN SUM(Costo) 
  ELSE 0 
  END 'Expr1'
FROM
  TDP_NotaSpeseSezB
1 голос
/ 19 января 2010

Вы можете использовать оператор case следующим образом:

SELECT case when sum(Costo)> 0 then sum(Costo) 
       else 0 end as Expr1 
FROM TDP_NotaSpeseSezB

CASE (Transact-SQL)

0 голосов
/ 19 января 2010
SELECT   CASE WHEN SUM(Costo) > 0 THEN SUM(Costo) ELSE 0 END AS Expr1
FROM     TDP_NotaSpeseSezB

Другие основные движки поддерживают этот синтаксис:

SELECT  GREATEST(SUM(Costo), 0)
FROM     TDP_NotaSpeseSezB

SQL Server, однако, нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...