我需要从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/