SOの親愛なる友人の皆さん、こんにちは。
私はこのテーブルを持っています:
PRECIOS
+---------+--------+-----------+-------------+------------+
| 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には3つの価格があります。この場合、最後の1つ(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 |
+--------+---------------------+-----------+
私は4月15日に5USDをPaypalでこれについて私を助けることができる人にチップします:)約束。
解決
kajから親切に提供
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
気になる人のために、それは彼らが性的快楽のためにあらゆる種類のものを売るモーテルのためのデータベースについてです。
ありがとう。