0
我需要一套〜5K食譜和MySQL的:找到表A列於表乙不表明或C
- 刪除那些沒有被歸類
- 刪除的那些這已經被分批
這應該離開我與分類,unbatched配方列表。
我發現很難從初始設置中減去記錄,特別是當每個設置都在10k左右時。我一直試圖使用的查詢要麼是緩慢的,要麼是返回的結果,我對此沒有把握。我只是想在數字上得到一些答案,因此查詢不必特別快 - 合理的做。這些是我正在使用的表格:
表食譜:這些是我們正在操作的食譜。這些ID是獨一無二的。
mysql> select id, title from recipes limit 10;
+---------+---------------------------------------------+
| id | title |
+---------+---------------------------------------------+
| R162739 | Chipotle Steak |
| R223652 | Sweet Pea Mash on Toast |
| R216897 | Horchata Latte |
| R125550 | Roasted Beet and Fennel Salad |
| R196267 | Sweet Potatoes with Fruit |
| R215630 | Mini Oatmeal-Raisin Cookies |
| R219133 | Pork with Butternut Squash |
| R166935 | Herb-Ginger Bulgur |
| R208872 | Chocolate-Macadamia Dreams |
| R220442 | Smoked Turkey Salad |
+---------+---------------------------------------------+
表recipe_log:每次有人添加配方到一個類別,記在日誌表中進行。日誌表有大約14k條記錄 - 其中許多不是我感興趣的類型.Ids不是唯一的 - 相同的配方ID可能有許多記錄。
mysql> select * from recipe_log where type='category changes' limit 10;
+---------+---------------------+------------------+------+
| id | date | type | note |
+---------+---------------------+------------------+------+
| R216064 | 2014-05-23 19:05:47 | category changes | NULL |
| R216064 | 2014-05-23 19:06:11 | category changes | NULL |
| R178159 | 2014-05-23 21:55:08 | category changes | NULL |
| R178159 | 2014-05-24 02:13:34 | category changes | NULL |
| R178159 | 2014-05-24 21:49:20 | category changes | NULL |
| r178159 | 2014-05-24 21:52:52 | category changes | NULL |
| r178613 | 2014-05-24 21:58:07 | category changes | NULL |
| r178613 | 2014-05-24 21:59:24 | category changes | NULL |
| r178159 | 2014-05-24 22:00:11 | category changes | NULL |
| r178613 | 2014-05-24 22:00:51 | category changes | NULL |
+---------+---------------------+------------------+------+
表recipe_batches:本表包含已經被添加到一個批次配方。 Ids不是唯一的 - 相同的配方可能會添加到多個批次中。這張表中大約有10條記錄。
mysql> select recipe_id, batch_id, date from recipe_batches limit 10;
+-----------+----------+---------------------+
| recipe_id | batch_id | date |
+-----------+----------+---------------------+
| R109651 | EH_1_250 | 2014-06-04 01:01:01 |
| R111068 | EH_1_250 | 2014-06-04 01:01:01 |
| R113500 | EH_1_250 | 2014-06-04 01:01:01 |
| R117349 | EH_1_250 | 2014-06-04 01:01:01 |
| R117494 | EH_1_250 | 2014-06-04 01:01:01 |
| R109648 | EH_1_250 | 2014-06-04 01:01:01 |
| R109652 | EH_1_250 | 2014-06-04 01:01:01 |
| R110440 | EH_1_250 | 2014-06-04 01:01:01 |
| R113004 | EH_1_250 | 2014-06-04 01:01:01 |
| R111068 | EH_1_250 | 2014-06-04 01:01:01 |
+-----------+----------+---------------------+
我絕對用你的邏輯;獲得已經分類的那些數據,只需從其他表中刪除其餘數據即可。 – Jhecht
是的我不確定他是否真的想要運行DELETE或只是獲取ID列表。 – SQLChao
是的,我看到你在說什麼,他說刪除。我認爲我們正在倒退,首先得到過濾的東西,然後處理大的東西,然而由於某種原因,他希望從乾草堆中開始,將堆積的細細的堆積起來,直到他拿到針。 – Jhecht