1
我有一個表叫tags
,這樣排序的數據:麻煩寫MySQL查詢涉及來自三個表
+-------+----------+
| tagID | tagName |
+-------+----------+
| 1 | jewelery |
| 2 | gifts |
| 3 | asdf |
| 4 | fashion |
| 5 | diamonds |
+-------+----------+
則表名爲coupon_tags
,像這樣:
+-------+----------+
| tagID | couponID |
+-------+----------+
| 1 | 1 |
| 2 | 1 |
| 3 | 2 |
| 4 | 2 |
| 5 | 3 |
+-------+----------+
最後,一表叫coupons
,這裏是有關部分(ID是一樣的couponID其他地方):
+----+-----------------+
| id | zone |
+----+-----------------+
| 1 | Los Angeles |
| 2 | Orange County |
| 3 | Los Angeles |
| 5 | Orange County |
| 6 | Orange County |
+----+-----------------+
我需要編寫一個查詢:我想通過第一個表獲得tagNames,這個表對應於第二個表中前10個最常用的tagID的有序列表,但它只通過與其他條件匹配的couponID來查找 - 「區域」是某個區域。最後,只有來自特定區域的前10名tagNames會顯示。我從來沒有做過三表查詢,有任何幫助嗎?
我試圖保持這個純粹的SQL,因爲我有一個部分工作的PHP解決方案,但它很混亂,速度很慢。