Mysql 选择3个内部联接的不同列

Mysql 选择3个内部联接的不同列,mysql,sql,select,group-by,distinct,Mysql,Sql,Select,Group By,Distinct,我想在这个sql语句中选择distinct RoomName,我不知道在这个sql语句中把distinct放在哪里 SELECT Distinct R.RoomID,R.RoomName,RT.RTypeName,RT.RTypePrice,RB.RBedName,RB.RBedPrice, G.GalName,G.GalPath FROM tbRoom as R INNER JOIN tbRoomType as RT ON R.RTypeID = RT.RTypeID INNER

我想在这个sql语句中选择distinct RoomName,我不知道在这个sql语句中把distinct放在哪里

SELECT Distinct
R.RoomID,R.RoomName,RT.RTypeName,RT.RTypePrice,RB.RBedName,RB.RBedPrice,
G.GalName,G.GalPath

FROM tbRoom as R
   INNER JOIN tbRoomType as RT ON R.RTypeID = RT.RTypeID
   INNER JOIN tbRoomBed as RB ON R.RBedID = RB.RBedID
   INNER JOIN tbGallery as G ON R.GalID = G.GalID
WHERE R.RoomID NOT IN(
    SELECT RD.RoomID FROM tbReservationDetail as RD WHERE
    RD.ArrivalDate <= '$dep' AND RD.DepartureDate >= '$arr' AND R.RoomID =
    RD.RoomID
)
试试这个:

SELECT R.RoomID,R.RoomName,RT.RTypeName,RT.RTypePrice,RB.RBedName,RB.RBedPrice, G.GalName,G.GalPath
FROM tbRoom AS R
INNER JOIN tbRoomType AS RT ON R.RTypeID = RT.RTypeID
INNER JOIN tbRoomBed AS RB ON R.RBedID = RB.RBedID
INNER JOIN tbGallery AS G ON R.GalID = G.GalID
WHERE R.RoomID NOT IN(
    SELECT RD.RoomID 
    FROM tbReservationDetail AS RD 
    WHERE RD.ArrivalDate <= '$dep' AND RD.DepartureDate >= '$arr' AND R.RoomID = RD.RoomID
)
GROUP BY R.RoomName;

您是否使用DISTINCT和未使用DISTINCT进行了检查,结果是什么?使用DISTINCT是什么意思?您只希望每个roomname显示一次吗?如果是,您希望在选择中显示哪些其他数据?请从…中选择不同的R.RoomName!?!?!