1

每次我尝试对其进行测试时,Dreamweaver 中的以下记录集都会引发 1052 模棱两可的错误。我知道它与添加日期有关,但不知道如何解决它。

    SELECT commentID, commentTitle, commentContent, topicTable.topicTitle,  DAYNAME(dateADDED) as day, MONTHNAME(dateADDED) as month, 
DAY(dateADDED) as date, YEAR(dateADDED) as year
FROM commentTable, topicTable
WHERE commentID = colname AND topicTable.topidID = commentTable.topicID

这是桌子的布局,

CREATE TABLE userTable
(
userID VARCHAR(15) NOT NULL,
screenName VARCHAR(15) NOT NULL UNIQUE,
userPasswd CHAR(40) NOT NULL,
firstName VARCHAR(15) NOT NULL,
lastName VARCHAR(25) NOT NULL,
dateJoined TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
lastlogin DATETIME,
PRIMARY KEY(userID)
)
;

CREATE TABLE categoryTable                                          
(
categoryID MEDIUMINT AUTO_INCREMENT NOT NULL,                       
categoryName VARCHAR(30) NOT NULL,                                  
categoryDescription VARCHAR(200) NOT NULL,                          
PRIMARY KEY (categoryID)
)
;

CREATE TABLE topicTable                                             
(
topicID MEDIUMINT AUTO_INCREMENT NOT NULL,                          
topicTitle VARCHAR(30) NOT NULL,                                    
userID VARCHAR(15) NOT NULL,                                        
dateAdded TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,             
categoryID MEDIUMINT NOT NULL,                                      
PRIMARY KEY (topicID)
)
;

CREATE TABLE commentTable                                           
(
commentID MEDIUMINT AUTO_INCREMENT NOT NULL,                        
commentTitle VARCHAR(30) NOT NULL,                                  
commentContent TEXT NOT NULL,                                       
userID VARCHAR(15) NOT NULL,                                        
dateAdded TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,             
topicID INT NOT NULL,                                               
PRIMARY KEY (commentID)
)
;
4

1 回答 1

0

dateADDED在两个表中都有表示,因此您应该选择您希望它出现在结果集中的哪一个:

SELECT ct.commentID
     , ct.commentTitle
     , ct.commentContent
     , tt.topicTitle
     , DAYNAME(ct.dateADDED) as `day`
     , MONTHNAME(ct.dateADDED) as `month`
     , DAY(ct.dateADDED) as `date`
     , YEAR(ct.dateADDED) as `year`
FROM commentTable ct
JOIN topicTable tt ON ct.commentID = tt.colname  AND tt.topidID = ct.topicID

顺便说一句,仍然想知道,colname代表什么,也许应该是ct.userID = tt.userID

于 2015-04-25T23:43:39.437 回答