0
Benimle ilişkili 3 tablo var ve ihtiyacım olan her şeyi alabilmem için verileri doğru şekilde sorgulamaya çalışıyorum.Kompleks MySQL sorgusu tabloları doğru bir şekilde birleştiriyor
+-----------+-------------+---------+-----+
| order_id | buyer_email | user_id | ... |
+-----------+-------------+---------+-----+
| 1AB45 | [email protected] | 123 | |
| YE72H | [email protected] | 124 | |
| HWYE1 | [email protected] | 125 | |
+-----------+-------------+---------+-----+
reg_keys
+-----------+-------------+---------+------------+
| reg_key | time_redeem | user_id | product_id |
+-----------+-------------+---------+------------+
| UN-12XZ | 2015-11-12 | 123 | 3214 |
| UN-34AB | 2015-10-12 | 125 | 5311 |
| UN-67UY | 2015-09-12 | 125 | 314 |
+-----------+-------------+---------+------------+
Ben kayıt tüm almak için arıyorum
+------------+--------------+------+-----+
| order_id | product_id |count | max |
+------------+--------------+------+-----+
| 1AB45 | 3214 | 1 | 20 |
| YE72H | 314 | 2 | 20 |
| HWYE1 | 5311 | 3 | 10 |
| HWYE1 | 314 | 1 | 20 |
+------------+--------------+------+-----+
emir
ORDER_ITEMS: Burada
Ben 3 tablolar vardır anahtarlar sayım/quanity 1'e eşittir ve time_redeemed NULL değildir.SELECT * FROM order_items
JOIN orders ON orders.order_id = order_items.order_id
JOIN reg_keys ON reg_keys.user_id=orders.user_id and reg_keys.product_id=order_items.product_id
WHERE count=1 and reg_keys.redeemed_by is not null
GROUP BY reg_key ORDER BY time_redeem DESC
Bu bana hiçbir sonuç elde edilir: Burada aynı e-posta/order_id ile diğer emir bilgi her sonuçlar elde ancak üzerine yazar benim sorgu var. Ne dağınıklık yaptım?
seçmeyin '* seçin. . . grup tarafından yanlıştır. 'Group by' kullanıyorsanız, normalde' select''de toplama işlevlerine sahip olursunuz. –
'reg_keys.redeemed_by' sorgusunda karışıklık ve' reg_keys.time_redeem' açıklamanızda? – Zimmi