我想弄清楚這個查詢究竟執行什麼。特別是部分在其中使用的變量@
和分配:=
。 第一部分是很簡單,因爲我們從派生表T1嵌套查詢,但什麼是不是真的清楚,我是RN列的結果。這裏的查詢:這個mysql查詢是什麼意思?
SELECT
t1.user_id,
t1.percentage,
t1.id,
t1.name,
(@rn := if(@uid = t1.user_id, @rn + 1,
if(@uid := t1.user_id, 1, 1))
) as rn
FROM
(SELECT
pbt.user_id,
pbt.percentage,
t.id, t.name
FROM
user_purchased_brand_tags AS pbt
JOIN tags t on t.id = pbt.tag_id
ORDER BY pbt.user_id, pbt.percentage desc) t1
你應該我們E中的谷歌或手動的疑慮,並也有很多關於它的問題計算器,例如:https://stackoverflow.com/questions/37869719/difference-between-and或https://stackoverflow.com/問題/ 39379659/what-does-operator-mean-in-mysql – Ryosaku