2017-06-19 91 views
-2

我有一個表相關性,其中有2個colums。 1. USER_ID(它有兩個用戶,一個和兩個) 2.等級如何檢查sql中兩個表之間的區別?

*現在我想知道兩個用戶(1,2)的收視率之間的差額。評分差異應該是兩個。 *

表: '+--------------------------+ | Tables_in_ndcg_reporting | +--------------------------+ | averages | | last_visited_queries | | products | | queries | | query_types | | ratings | | ratings_news | | relevancies | | schema_migrations | | sites | | users | +--------------------------+ 內部相關性來:

`+-----+--------+------------+----------+---------+---------------------+---------------------+ 

| id |評級| product_id | query_id | user_id | created_at | updated_at

| 726 | 5 | 1 | 1 | 2 | 2016-11-24 06:06:12 | 2016-11-24 12:43:07 |

| 727 | 5 | 2 | 1 | 2 | 2016-11-24 06:06:12 | 2016-11-24 12:43:21 |

| 728 | 5 | 3 | 1 | 2 | 2016-11-24 06:06:12 | 2016-11-24 12:43:31 |

| 729 | 5 | 4 | 1 | 2 | 2016-11-24 06:06:12 | 2016-11-24 12:43:32 |

| 730 | 4 | 5 | 1 | 2 | 2016-11-24 06:06:12 | 2016-11-24 12:43:53 |

| 731 | 5 | 6 | 1 | 2 | 2016-11-24 06:06:12 | 2016-11-24 12:43:55 |

| 732 | 4 | 7 | 1 | 2 | 2016-11-24 06:06:12 | 2016-12-28 10:25:52 |

| 733 | 4 | 8 | 1 | 2 | 2016-11-24 06:06:12 | 2016-12-27 12:44:24 |

| 734 | 5 | 9 | 1 | 2 | 2016-11-24 06:06:12 | 2016-11-24 12:44:01 |

| 735 | 4 | 10 | 1 | 2 | 2016-11-24 06:06:12 | 2016-12-28 10:25:53 | `

+1

到目前爲止您嘗試過什麼? –

+0

這是這裏的2個表格(在問題標題中提到)?你能否提供這兩個表格的一些樣本數據,以及結果應該是什麼樣子的樣本? –

+0

我什麼都不知道,所以我沒有嘗試任何東西 –

回答

0

你可能會尋找一個自連接,像這樣:

select a.product_id 
from relevencies a inner join relevencies b 
on a.product_id = b.product_id and a.user_id <> b.user_id and a.rating >= (b.rating + 2); 

如果一個用戶只能提供單一的審查一個產品,你可以刪除a.user_id <> b.user_id條件。

+0

嘿,我添加了數據。 –