2016-11-03 4 views
0

Попытки сделать запрос, но нужно добавить 250 в TotalCost если пробег> 150.MySQL запрос добавление значения в новый столбец

select milegae.dc_id, 
mileage.store_id, 
mileage.mileage, 
round((mileage.mileage * .75 + 200),2) as TripCost 
from mileage; 

Этот запрос дает мне данные, которые я хочу, но я не уверен как добавить 250 к TotalCost с учетом параметров.

ответ

1

Вы можете сделать это с CASE EXPRESSION:

select milegae.dc_id, 
    mileage.store_id, 
    mileage.mileage, 
    CASE WHEN mileage.mileage > 150 
     THEN ROUND(((mileage.mileage+250) * .75 + 200),2) 
     ELSE ROUND((mileage.mileage * .75 + 200),2) 
    END as TripCost 
from mileage; 
+0

чувак, я думаю, 250 должен добавить после всех расчетов. – Wanderer

+0

Может быть, не совсем понятно ... OP тоже может сделать некоторые работы :) @Ullas – sagi

0

Используйте выражение CASE, чтобы проверить пробег> 150.

Надеется, что вы хотите добавить 250 к конечному значению, если величина пробега больше 150.

Запрос

SELECT 
    milegae.dc_id, 
    mileage.store_id, 
    mileage.mileage, 
    CASE WHEN mileage.mileage > 150 
    THEN round((mileage.mileage * .75 + 200),2) + 250 
    ELSE round((mileage.mileage * .75 + 200),2) 
    END AS TripCost 
FROM mileage; 
+0

Спасибо !!! Я пробовал это, но мой Синтаксис был неправильным. Ваше решение отлично работает !!! –

Смежные вопросы