我有以下MySQL查詢問題:MySQL查詢問題布爾
SELECT * FROM TPDSessions WHERE TPDS_Morning = 0 AND TPDD_Id = 1 AND TPDS_Chair1_idPerson = 16785 OR TPDS_Chair2_idPerson = 16785
返回該行有TPDS_Morning在它的值爲1,我不知道爲什麼。這是表結構:
CREATE TABLE `TPDSessions` (
`TPDS_Id` int(11) NOT NULL auto_increment,
`TPDR_Id` int(32) NOT NULL,
`TPDD_Id` int(32) NOT NULL,
`TPDS_Morning` tinyint(1) NOT NULL,
`TPDS_Name` varchar(200) NOT NULL,
`TPDS_Chair1_idPerson` int(11) NOT NULL,
`TPDS_Chair2_idPerson` int(11) NOT NULL,
PRIMARY KEY (`TPDS_Id`),
KEY `chair1_idPerson` (`TPDS_Chair1_idPerson`,`TPDS_Chair2_idPerson`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;
如果任何人都可以解釋如何調整我的查詢不返回結果...
魔術字是'優先'。 http://dev.mysql.com/doc/refman/5.0/en/operator-precedence.html – bobince 2010-02-13 13:18:56