Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php、sql选择_Php_Mysql_Sql - Fatal编程技术网

php、sql选择

php、sql选择,php,mysql,sql,Php,Mysql,Sql,我有一个愚蠢的问题,我有一张桌子: id_product name value 1 price 10-20 1 type computer 2 price 20-30 3 price 100-200 我想从这个表中选择“按id\u产品分组”和“按值排序”,其中name='price' 我该怎么做 非常感谢 SELECT * FR

我有一个愚蠢的问题,我有一张桌子:

id_product    name        value
   1          price       10-20
   1          type        computer
   2          price       20-30
   3          price       100-200
我想从这个表中选择“按id\u产品分组”和“按值排序”,其中name='price'

我该怎么做

非常感谢

SELECT * 
FROM table_name 
WHERE name = 'price'
GROUP BY id_product
ORDER BY value
你可以看到


您可以看到

从表\u name中选择*,其中name='price'按id分组\u产品订单按值分组

从表_name中选择*,其中name='price'按id分组_产品订单按值分组

select * from table_name  WHERE name='price' 
    GROUP BY id_product
    ORDER BY value
在PHP中

mysql_query("select * from table_name  WHERE name='price' 
        GROUP BY id_product
        ORDER BY value") or die(mysql_error());
在PHP中

mysql_query("select * from table_name  WHERE name='price' 
        GROUP BY id_product
        ORDER BY value") or die(mysql_error());

就在我的头顶上

它有用吗

SELECT * FROM `table` WHERE `table`.`name`='price' GROUP BY `table`.id_product ORDER BY `table`.`value` ASC

就在我的头顶上

它有用吗

SELECT * FROM `table` WHERE `table`.`name`='price' GROUP BY `table`.id_product ORDER BY `table`.`value` ASC

这取决于您希望如何对具有相同id的项目进行分组:您希望显示哪一个?理论上,GROUP BY不应与SELECT*一起使用,它不适用于非mysql数据库,应与聚合函数(如COUNT、MAX等)关联


您可能只需要选择DISTINCT而不是GROUP BY。

这取决于您希望如何对具有相同id的项目进行分组:您希望显示哪一个?理论上,GROUP BY不应与SELECT*一起使用,它不适用于非mysql数据库,应与聚合函数(如COUNT、MAX等)关联

您可能只需要选择DISTINCT而不是GROUP BY。

这将从表名称和order BY值中选择DISTINCT id\U product,其中名称是价格。我想这会给你带来你想要的结果

SELECT DISTINCT id_product 
FROM table_name 
ORDER BY (
    SELECT t.value FROM table_name t 
    WHERE t.name='price'
    AND t.id_product = table_name.id_product
)
这将从表名称和order by值中选择不同的id产品,其中名称为价格。我想这会给你带来你想要的结果

SELECT DISTINCT id_product 
FROM table_name 
ORDER BY (
    SELECT t.value FROM table_name t 
    WHERE t.name='price'
    AND t.id_product = table_name.id_product
)

编写查询并确保WHERE子句是第一个要在PHP中执行的SQL查询吗?编写查询并确保WHERE子句是第一个要在PHP中执行的SQL查询吗?按id从表\u名称组中选择*按产品顺序从表\u名称t中选择t.value其中name='price'和t.id\u product=table\u name.id\u product根据id从table\u name组中选择*根据产品订单从table\u name t中选择t.value,其中name='price'和t.id\u product=table\u name.id\u product