Привет дорогие друзья SO.Как я могу достичь этого запроса в MySQL
У меня есть эти таблицы:
коштовного
+---------+--------+-----------+-------------+------------+
| priceID | itemID | priceCash | pricePoints | priceDate |
+---------+--------+-----------+-------------+------------+
| 1 | 1 | 30.00 | 90 | 2012-03-05 |
| 2 | 2 | 40.00 | 120 | 2012-03-05 |
| 6 | 2 | 50.00 | 50 | 2012-03-07 |
| 7 | 2 | 55.00 | 50 | 2012-03-07 |
+---------+--------+-----------+-------------+------------+
ПУНКТЫ
+--------+----------------------+-------------+------------+----------+---------------+---------------+
| itemID | itemName | itemWarning | itemUrgent | itemType | itemVipPoints | itemExistence |
+--------+----------------------+-------------+------------+----------+---------------+---------------+
| 1 | Lubricante Orgasmix | 20 | 10 | 2 | 3 | 300 |
| 2 | Anillo Vibrador | 50 | 50 | 2 | 50 | 120 |
| 3 | Crema Chantilly | 5 | 20 | 1 | 0 | 500 |
| 4 | Caribe Cooler | 10 | 4 | 1 | 0 | 100 |
| 5 | Cacahuates Japoneses | 20 | 10 | 1 | 0 | 400 |
| 6 | Cerveza Sol (lata) | 12 | 112 | 1 | 0 | 200 |
| 7 | Chocolate derretido | 20 | 10 | 1 | 0 | 200 |
+--------+----------------------+-------------+------------+----------+---------------+---------------+
Мне нужно, чтобы получить таблицу, как это:
- ItemType должен быть '2'
- Itemid требуется
- ITEMNAME требуется
- priceCash требуется
- itemExistence должно быть> 0
Но главная проблема (для меня) является что мне нужно получить ПОСЛЕДНЮЮ priceCash для каждого уникального элемента.
Например, как вы можете видеть, itemID = 2 имеет три цены. Мне нужно, чтобы в этом случае таблица показала только последнюю (55.00).
Итак, вкратце: мне нужно, чтобы получить это:
+--------+---------------------+-----------+
| itemID | itemName | priceCash |
+--------+---------------------+-----------+
| 1 | Lubricante Orgasmix | 30.00 |
| 2 | Anillo Vibrador | 55.00 |
+--------+---------------------+-----------+
Но мой лучший результат что-то вроде этого :(
+--------+---------------------+-----------+
| itemID | itemName | priceCash |
+--------+---------------------+-----------+
| 1 | Lubricante Orgasmix | 30.00 |
| 2 | Anillo Vibrador | 40.00 |
| 2 | Anillo Vibrador | 50.00 |
| 2 | Anillo Vibrador | 55.00 |
+--------+---------------------+-----------+
Я опрокинется 5USD на Апр 15 через PayPal тому, кто может мне помочь на этом :) Обещай.
РЕШЕНИЕ
При условии добросердечно Кая
select it.itemID, it.itemName, p.priceCash
from items it
inner join precios p on p.itemID = it.itemID
inner join (select itemID, max(priceID) latestPriceID
from precios
group by itemID) latestPrice on latestPrice.itemID = p.itemID and latestPrice.latestPriceID = p.priceID
where it.itemType = 2
and it.itemExistence > 0
Для тех, кто против, это о базе данных для мотеля, где они продают все рода вещи для сексуального удовольствия.
Спасибо.
сообщение запроса вы пробовали .. – Teja
К сожалению, мои ставки начинаются от $ 100/час. Это не место, чтобы получить помощь фрилансера. Для этого есть и другие сайты. – Cfreak
Cmon, со значениями столбцов, такими как 'Lubricante Orgasmix' и' Anillo Vibrador', которые могли бы сопротивляться? –