seni o kadar gibi deposunda satın alabilirsiniz insanlar, marketler ve öğeleri olan bir veritabanı var demek izlemek tablo hangi mağazalar satmak ne:-pek-çok ve çok sayıda çoğa kavşaklar
Inventory
--------------------
| store_id| food_id|
--------------------
| 1 | 1 |
| 1 | 2 |
| 2 | 1 |
| 3 | 1 |
| 3 | 2 |
| 3 | 3 |
--------------------
oysa benim
Lists
---------------------
| person_id| food_id|
---------------------
| 1 | 1 |
| 1 | 2 |
| 1 | 3 |
| 2 | 1 |
| 2 | 3 |
---------------------
üzerinde alışveriş listeleri olan başka tablo Benim soru, bir kişi veya onların kimliğine göre, hangi mağazalara gidebileceklerini bulmanın en iyi yolu nedir? MySQL'de bu tür hesaplamalar için bir model var mı? Zaman ayırdığınız için
-- Given that _pid is the person_id we want to get the list of stores for.
SELECT stores.name, store_id, num, COUNT(*) AS counter
FROM lists
INNER JOIN inventory
ON (lists.food_id=inventory.food_id)
INNER JOIN (SELECT COUNT(*) AS num
FROM lists WHERE person_id=_pid
GROUP BY person_id) AS T
INNER JOIN stores ON (stores.id=store_id)
WHERE person_id=_pid
GROUP BY store_id
HAVING counter >= num;
Teşekkür: (çok çirkin ve pis)
girişimim gibi bir şey!
Düzenleme SQL Fiddle with Data
sayesinde ancak üzerinde bir çalışma modeli oluşturduk eğer daha iyi olurdu [SQL Fiddle] (http://sqlfiddle.com/) – Taryn
Böyle mi? http://sqlfiddle.com/#!2/83667/6 – KLee1
Mükemmel, teşekkürler! :) – Taryn