我需要从table1,table2,table3 ..中选择所有(*)行,但是我需要在此INNER JOIN中从表2中选择最小和最大价格。我已经阅读了有关如何执行此操作的信息,但是如何在INNER JOIN中执行此操作以及如何在PHP变量中显示它。

最初的问题:拉出最小值和最大值后如何显示它们(例如$Result['MinPrice']$Result['MaxPrice'])。

这是我的查询:

$Query = mysql_query("
   SELECT      *
   FROM        table1
   INNER JOIN  table2 ON table1.UserID = table2.UserID
   INNER JOIN  tables3 ON table2.DeviceID = table3.DeviceID
   WHERE       table2.DeviceID = '$GetDeviceID'
");


这是表格结构:

table1 = usersinfo

UserID   UserFirstName     UserLastName    UserDisplayName
1        John              Doe             John D.


table2 =列表

ListingID  UserID   DeviceID
11         1        2


table3 =设备

DeviceID
2

最佳答案

如果您确实想以这种方式执行您要的操作,则可以使用下面显示的查询。但是,如果在查询时返回了多行,则确实会返回很多重复的行。试试看,看看是否可行。

$Query = mysql_query("
    SELECT table1.*, table2.*, table3.*,
           MIN(table2.price) as minny,
           MAX(table2.price) as maxxy
    FROM   table1
    INNER JOIN table2 ON table1.UserID = table2.UserID
    INNER JOIN tables3 ON table1.DeviceID = table3.DeviceID
    WHERE  table1.DeviceID = '$Something'
    GROUP BY table2.ListingAskingPrice
");


然后通过执行$result['minny'] and $result['maxxy']获得此值

关于php - 从数据库中提取最低和最高价格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15090363/

10-12 04:07