математ. операция в CONCAT(field.A - field.B)

_Leonchik_

Новичок
математ. операция в CONCAT(field.A - field.B)

в запросе присутствует CONCAT(field.A - field.B) AS RESULT с последующей сортировкой по RESULT.

где field.B - может содержать NULL или интовое значение.
если field.B = NULL, то и RESULT на выходе также получает NULL.
если field.B = int, то и RESULT на выходе получает нужное значение.


Вопросик: каким образом можно подставить вместо field.B значение 0?

может можно преобразовать его к целому типу? Наведите на мысль. как это можно сделать.

-~{}~ 06.02.07 14:15:

CAST(expression AS type)
или
CONVERT(expression,type)
что-то подойдет из этого?

-~{}~ 06.02.07 14:27:

подходит и то и другое.
что предпочтетельней Ув. ГУРУ?
 

_Leonchik_

Новичок
эту сылку я наизусть знаю.
вот как применить IFNULL в выражении A-B, если B NULL or int
невижу.
 

SaNeK

Новичок
_Leonchik_
ну уж не наизусть - это точно.

IFNULL(expr1,expr2)
If expr1 is not NULL, IFNULL() returns expr1; otherwise it returns expr2. IFNULL() returns a numeric or string value, depending on the context in which it is used.
select IFNULL(NULL, 1) - IFNULL(1, 0);
 
Сверху