Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/72.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
由重复项标识并在其中删除的Sql查询_Sql - Fatal编程技术网

由重复项标识并在其中删除的Sql查询

由重复项标识并在其中删除的Sql查询,sql,Sql,查询返回Product\u id列和Date列,但Product\u id列包含重复项,因此我希望根据最近日期添加的日期删除Product\u id中的重复项。任何人都可以给出答案。尝试按Product\u id分组。下面的查询将选择重复Product\u id的最新日期 SELECT i.product_id, o.date_added FROM ims_order_product i INNER JOIN ims_order o WHERE i.product_id IN (S

查询返回Product\u id列和Date列,但Product\u id列包含重复项,因此我希望根据最近日期添加的日期删除Product\u id中的重复项。任何人都可以给出答案。

尝试按Product\u id分组。下面的查询将选择重复Product\u id的最新日期

SELECT i.product_id, o.date_added 
FROM ims_order_product i 
   INNER JOIN ims_order o 
WHERE  i.product_id IN (SELECT p.product_Id FROM ims_product p)
请尝试此查询

SELECT i.product_id, MAX(o.date_added) FROM ims_order_product i INNER JOIN ims_order o WHERE i.product_id IN (SELECT p.product_Id FROM ims_product p) GROUP BY i.product_id
从中选择*(从
ims\u order\u product
i中选择i.product\u id、o.date\u added、o.order\u id 加入
ims\u order
o ON o.order\u id=i.order\u id
加入
ims\u product
pr.product\u id=i.product\u id ORDER BY date\u added DESC)作为子组BY product\u id

添加样本数据和预期输出您使用的是什么?“SQL”只是一种查询语言,而不是特定数据库产品的名称。请为您正在使用的数据库产品添加标记,
postgresql
oracle
sql server
db2
,…查询无效,缺少连接条件,但运行所有日期的查询都相同,由于该列由max date占据,因此我们必须根据产品ID在日期上操作,因此最后有一个
group by
子句。因此,“最大日期”将给出每个产品id的最大日期,如果您对不同的产品id有不同的“最大日期”,则所有日期将不相同。No group by applied by last first他们已根据“最大日期”将所有产品id设置为相同的日期,因此我们通过上述查询解决了此问题
SELECT i.product_id, o.date_added 
FROM ims_order_product i 
   INNER JOIN ims_order o 
WHERE  i.product_id IN (SELECT p.product_Id FROM ims_product p)