Применить функцию к столбцу в запросе sqlite - PullRequest
0 голосов
/ 18 октября 2018

Предположим, у меня есть эта таблица в sqlite3.

name,   currency,   price
AA,     SGD,        1
BB,     USD,        2
CC,     EUR,        3

Мне нужно обработать price таким образом.

if currency == "SGD", price = price*2 
if currency == "USD", price = price*3
if currency == "EUR", price = price*4

Выходная таблица после обработки будет выглядетьthis;

name,   currency,   price
AA,     SGD,        2
BB,     USD,        6
CC,     EUR,        12

Можно ли написать какую-то функцию для обработки столбца price в sql для баз данных sqlite3?

1 Ответ

0 голосов
/ 18 октября 2018

Используйте выражение CASE:

SELECT
    name,
    currency,
    CASE WHEN currency = 'SGD' THEN 2*price
         WHEN currency = 'USD' THEN 3*price
         WHEN currency = 'EUR' THEN 4*price
         ELSE price END AS price
FROM yourTable;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...