表我有兩個表 - Price_list
和order_list
。 price_list
表格爲我提供了所有product_id
所有商店的有效日期的所有價格。雖然order_list
給我的訂單列表,即誰下了訂單和從哪個商店。加盟R或Python的
PRICE_LIST - 日期,PRODUCT_ID,STORE_ID,selling_price
order_list - 日期,PRODUCT_ID,STORE_ID,selling_price,ORDER_ID,電子郵件,product_order_id(唯一鍵 - PRODUCT_ID和ORDER_ID的級聯因爲有可能不止一個產品在訂單中)
我想結合上述兩個表格,以便每個product_order_id
我都可以獲得產品可用的所有價格的列表。基本上我想知道什麼是可用價格和客戶選擇什麼。下表說明了我的查詢。
|product_order_id Date product_id store_id selling_price Placed|
|134323_3545 2016/03/11 134323 6433 2560.00 Yes |
|134323_3545 2016/03/11 134323 6343 2534.00 No |
|134323_3545 2016/03/11 134323 1243 2313.00 No |
|134323_3545 2016/03/11 134323 2424 2354.00 No |
|145565_9965 2016/03/11 145565 9887 5432.00 No |
|145565_9965 2016/03/11 145565 7645 5321.00 Yes |
我無法避開在R.解決這個雖然我喜歡的R用這個,我很開放,如果有在MySQL或Python的解決方案。得到這個工作的步驟是(一)在特定日期對在PRICE_LIST(C)的product_order_id搜索所有條目每個PRODUCT_ID選擇product_order_id(B)追加這一個表,並添加一列指定product_order_id此列表適用於(d )重複下一個product_order_id的步驟。一旦數據框準備就緒,我可以在列(product_order_id)上留下join order_list表以獲得最終的數據框。我還沒能掌握如何做到這一點的R.
閱讀環路和一些幫助,我能夠創建一個循環搜索了一天每個的product_id所有的價格條目後(product_date是日期和PRODUCT_ID的串聯):
datalist <- list()
for(i in (orderlisit_test$product_date){
dat <- filter(pricelist, pricelist$product_date==i)
datalist[[i]] <- dat
}
big_data = do.call("rbind", datalist)
然而,我也希望添加另一列指定爲每次迭代的order_id或product_order_id。所以,如果任何人都可以幫助我,我應該如何循環以及在同一時間添加另一列,這將幫助我很多。
我不認爲左聯接會工作。這隻會告訴我訂單所在商店的細節。除了成功訂購商店的訂單清單之外,我還希望可以爲每個訂單ID放置訂單的商店列表。 –
對不起,如果我誤解了,是否想要爲每個product_order_id顯示另一個表中存在的價格列表,其中加入兩個表的元素是product_id? – adaien
是......正是......什麼都知道所有的可能性。此外價格每天都在變化,所以它的product_id和「日期」相結合。 –