我正在嘗試編寫一個將返回平均值數組的mysql查詢。 我會解釋:將返回多個平均值的SQL查詢
正如你從圖片上可以看到,我有一個網頁,有問題的行,戶名作爲列的表。這個想法是,你可以在每個問題上評價每個用戶。 提交時,它進入一個MySQL表「評級」,每個記錄包含用戶ID,問題ID和值(評分1到10)。 我想要做的是,我想要有一個管理員視圖,而不是能夠評價用戶,而不是每個選擇框,它應該只顯示每個用戶對每個問題的平均值。
我可以通過在這個表中對每個單元格執行一次mysql查詢來完成它,但這意味着一個巨大的查詢。 我想要的是一個查詢,它會返回一個2維數組,其中第一個維度關鍵字是用戶ID,第二個維度是具有平均值的數組,其中的關鍵字爲問題ID。
我什至不能想到如何實現它。一個解決方案,甚至是一個提示什麼方向看,將是最肯定的讚賞!
CREATE TABLE IF NOT EXISTS `ratings` (
`rating_id` int(255) NOT NULL AUTO_INCREMENT,
`user_id` int(6) NOT NULL,
`question_id` int(6) NOT NULL,
`rating_value` int(2) NOT NULL,
PRIMARY KEY (`rating_id`),
KEY `user_id` (`user_id`,`question_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=13 ;
我們可以有代碼嗎? –
你可以發表你的餐桌結構嗎? –
CREATE TABLE IF NOT EXISTS'ratings'( 'rating_id' int(255)NOT NULL AUTO_INCREMENT, 'user_id' int(6)NOT NULL, 'question_id' int(6)NOT NULL, 'rating_value' int( 2)NOT NULL, PRIMARY KEY('rating_id') KEY'user_id'('user_id','question_id') )ENGINE = InnoDB的默認字符集= LATIN1 AUTO_INCREMENT = 13; –