我正在尝试获取最大值和最小值,并将那些在php中分配为单独的变量并选择其中的所有其他行并将其作为另一个变量,然后使用检索到的信息填充下拉列表。
SELECT z_depth AS z_depth FROM elements
UNION
SELECT MAX(z_depth) AS MAX FROM elements
UNION
SELECT MIN(z_depth) AS MIN FROM elements
问题是它没有将z_depth
AS z_depth
和MAX
作为MAX
等返回,它只显示为z_depth
。如果有人不介意指出解决方案或可能更好的方法,我会非常感激。
答案 0 :(得分:1)
一个简单的SQL查询:
SELECT z_depth
FROM elements
ORDER BY z_depth ASC
将其读入名为$results
的数组中,然后执行:
$min = min($results);
$max = max($results);
那应该能得到你想要的东西。
答案 1 :(得分:0)
您可以在查询中创建第二列,以识别记录的性质(&#34; max&#34;,&#34; min&#34;,&#34;其他&#34;):< / p>
SELECT z_depth AS z_depth, 'Other' AS Type FROM elements
UNION
SELECT MAX(z_depth) AS MAX, 'Max' AS Type FROM elements
UNION
SELECT MIN(z_depth) AS MIN, 'Min' AS Type FROM elements
你只是做了一系列UNION
个盲目查询的麻烦就是你最终得到的是一个列而不知道任何特定记录的位置。
答案 2 :(得分:0)
你在尝试这样的事吗
SELECT z_depth FROM elements WHERE z_depth&gt; =(SELECT MIN(z_depth)FROM elements)&amp;&amp; z_depth&lt; =(SELECT MAX(z_depth)FROM elements)ORDER BY z_depth ASC
然后,您始终可以将第一行和最后一行保存为min和max