我正在尝试将数据从 cvs 文件上传到 mysql。我想过滤列滚动的重复值。 例如。
Table1
-----------
id name roll
1 Nirdos 4
2 krishn 2
3 shrest 2
如果数据是这样的,我想插入前两行,因为第三行与第二行有重复的行。
提前致谢
最佳答案
您可以使用以下INSERT INTO ... SELECT
语句来执行插入:
INSERT INTO targetTable (id, name, roll)
SELECT t1.id, t1.name, t1.roll
FROM sourceTable AS t1
JOIN (SELECT roll, MIN(id) AS min_id
FROM sourceTable
GROUP BY roll) AS t2
ON t1.roll = t2.roll AND t1.id = t2.min_id
如果 roll
值重复,此查询将插入具有最小 id
值的记录。
关于php - 如何在mysql中插入唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35649243/