0
我對SQL很感興趣,我必須將這個ruby腳本轉換爲SQL,因爲ruby腳本太長而無法在服務器上運行。下面是Ruby腳本:高級SQL查詢幫助。需要將ruby腳本翻譯爲SQL查詢
orders = Order.find_all_by_state("in_progress"); nil
orders.each do |o|
if o.line_items.length == 0 and o.created_at > Time.parse("2011-12-14 00:00:00.000000 -08:00") and o.created_at < Time.parse("2011-12-21 00:00:00.000000 -08:00")
o.adjustments[0].destroy
o.shipment.destroy
o.turnaround_time.destroy
o.checkout.destroy
o.destroy
end; nil
end; nil
反正協會如下:
的訂單有一個結賬,運輸,週轉時間,許多line_items,和許多調整(訂單我只想刪除有1)。 我想要刪除所有沒有訂單項且在日期範圍內創建的訂單(十二月十五日至十二月)。我還想刪除與這些訂單相關的所有對象(貨件,週轉時間,結賬,調整)。我是新來的SQL,我絕對不知道如何做到這一點。我一直在看SQL文檔,但我真的很爲這個語法掙扎。如果我能得到一些幫助,那會很好。
感謝。結束了遵循您的指導原則,我用這個代碼:'DELETE FROM orders WHERE id not in(SELECT order_id FROM line_items)AND created_at> =「2011-12-14 00:00:00.000000 -08:00」AND created_at <= 「2011-12-21 00:00:00.000000 -08:00」; DELETE FROM shipments WHERE order_id NOT IN(SELECT id FROM orders); DELETE FROM checkouts WHERE order_id NOT IN(SELECT id FROM orders); DELETE FROM調整 WHERE order_id NOT IN(SELECT id FROM orders); DELETE FROM turnaround_times WHERE order_id NOT IN(SELECT id FROM orders);' – Zyren 2012-02-03 16:39:33