私はこのmysqlコードを持っており、データベースに表示される回数によって各カテゴリで最も人気のある説明を取得します-
それはリストをつかみます、しかしそれはこのようにデータをエコーアウトします
"Adidas was the most popular in category 5 with 1 occurrences"
この興味(趣味)のための私のテーブル構造は
# interests
CREATE TABLE `interests` (
`interestID` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(100) NOT NULL,
`categoryID` int(11) NOT NULL,
`sessionID` int(11) NOT NULL,
`interest_desc` varchar(30) NOT NULL,
`timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`interestID`)
) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=utf8
# categories
CREATE TABLE `categories` (
`categoryID` int(11) NOT NULL AUTO_INCREMENT,
`category_desc` varchar(100) NOT NULL,
PRIMARY KEY (`categoryID`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8
これは私のSQLコマンドです:
SELECT
interest_desc,
categoryID,
MAX(num_in_cat) AS num_in_cat,
category_name
FROM
(
SELECT interest_desc, categoryID, COUNT(categoryID) AS num_in_cat
FROM interests
GROUP BY interest_desc, categoryID
) subsel
JOIN categories ON subsel.categoryID = categories.ID
GROUP BY interest_desc, categoryID, category_name
このエラーが発生しました:
一意ではないテーブル/エイリアス:'カテゴリ'