SQL умножение на курс валюты

256
23 октября 2018, 11:30

Есть две таблицы

Необходимо каждую покупку (item_id) умножить price на курс (rate) по максимально свежей date.

Написал пару примеров кода, но у нас первая валюта доллар, вот и считает только для строк где доллар. Не понимаю как работает sql, можете объяснить что не так?

SELECT item_id, price*rate AS price_in_byn FROM items, rates
WHERE rates.currency = items.currency AND date IN 
(Select max(date) from rates);
Answer 1
SELECT items.item_id, 
       items.price * ( SELECT rates.rate
                       FROM rates
                       WHERE rates.currency = items.currency
                       ORDER BY rates.date DESC
                       LIMIT 1 ) AS price_in_byn 
FROM items;
Answer 2
SELECT
  i.item_id,
  (i.price * r.rate) AS price_in_byn
FROM
  items AS i
  LEFT JOIN (
    SELECT
      r1.currency,
      MAX(r1.rate) as rate
    FROM
      rate AS r1
      INNER JOIN (
        SELECT
          MAX(r1_1.date) AS max_date,
          r1_1.currency
        FROM 
          rate AS r1_1
        GROUP BY
          r1_1.currency
      ) AS r2 ON r2.currency = r.currency AND r2.max_date = r1.date
      GROUP BY r1.currency
  ) AS r ON r.currency = i.currency
READ ALSO
Как вывести Recycleview картинку из базы mysql в layout?

Как вывести Recycleview картинку из базы mysql в layout?

Как вывести Recycleview картинку из базы mysql в layout ?

235
Аналог команды в MS SQL

Аналог команды в MS SQL

Переношу базу с mysql на ms sqlВ mysql Встречается в процедурах такая конструкция:

194
Помогите с убиранием ободки у элемента label

Помогите с убиранием ободки у элемента label

При клике по элементу label появляется обоводка, outline: none и border: none, также пробовала давать им приоритет !important не помогло:

167
Блок формы по центру

Блок формы по центру

Необходимо размещать блок формы по центру экрана, если он влазит, а если он не влазит, то добавлять скролл, но чтоб он был тоже по центру относительно...

221