摆脱重复的行

时间:2014-09-05 03:15:44

标签: php mysql sql

我正在研究mysql,我在视图中得到了一些重复的行。视图只包含图像表数据和产品数据。 现在我想要的是获得同一个id中唯一的一列。 (我尝试制作唯一的密钥,但它的视图因此无法工作。)

这是我的查询。

SELECT id, status_pub, name, code, 
       catch_copy, icon_new, icon_recommended, 
       u_date, order_num, st_time, ed_time, 
       isNULL(order_num) AS order_num_null, filename 
FROM TEST 
WHERE id IN (SELECT DISTINCT data_id 
             FROM R_CATEGORY 
             WHERE category_id REGEXP '^001') 
AND ((st_time IS NULL AND ed_time IS NULL) 
 OR (NOW() BETWEEN st_time AND ed_time) 
 OR (st_time IS NULL AND ed_time > NOW()) 
 OR (ed_time IS NULL AND st_time < NOW()) ) 
AND status_pub = 1     
ORDER BY order_num_null ASC, order_num ASC, u_date

在这里你可以看到重复的3个重复'id 48'。我想找回第一个。 如     。     。 46, 47, 48, 49, 。

NOT 。 。 46, 47, 48, 48, 48, 49,

enter image description here

现在我编辑。 我添加了DISTINCT STATEMENT, 但结果是 After adding distinct statement

1 个答案:

答案 0 :(得分:0)

您可以删除具有相同ID值的不同值的filename列,并将输出存储在文件列为null的临时表中

稍后在临时表中更新此列,并使用与

连接的视图中的最高值