2011-12-13 127 views
-1

我想顯示所有的價格,但不是最大值和最小值。如何不顯示最大值和最小值?

我使用NOT IN但它不工作。

<?php $cod_product = $_GET["cod_product"]; 

$sql = "SELECT `ppm` 
       ,`price` 
       ,`market` 
       ,`product` 
       ,`name_market` 
       ,`cod_market` 
    FROM ppm, markets 
       WHERE product=$cod_product AND cod_market=market NOT IN (SELECT MAX(price), MIN(price) FROM ppm) 
       ORDER BY price ASC"; 

     $result = mysql_query($sql, $connection) or die("fail"); 

     if ($dados = mysql_fetch_array($result)) { 
      do { 

       $cod_market = $dados['market']; 
       $nome_mercado = $dados['name_market']; 
       $price = $dados['price']; 



      echo $price; 
      echo $name_market; 


      } 
      while($dados = mysql_fetch_array($result)); 
      }else { } 
      ?> 
+2

**定義完全**,你是什麼意思「_it不工作_」。有錯誤嗎?這個結果與你期望的結果有什麼不同嗎? – Tadeck 2011-12-13 23:53:03

+0

我會假設那裏*是*錯誤,因爲在我意識到的任何DBMS中沒有`mini`函數。 – 2011-12-13 23:59:48

回答

2

更改mini()min()(假設MySQL)。

mini()不是功能。

此外,你的一些SQL沒有多大意義。

SELECT cod_ppm 
     ,price 
     ,market 
     ,product 
    FROM ppm 
    WHERE price NOT IN (SELECT MAX(price), MIN(price) FROM ppm) 
ORDER BY price ASC 
相關問題