2012-07-25 87 views
2

我需要調用INSERT + SELECT用戶數據導入到不同的表,我需要過濾USER_NAME重複,所以我需要的東西是這樣的:INSERT SELECT查詢時,一列是唯一

INSERT INTO new_table SELECT email, distinct user_name, password from old_table 

但不同的作品只有在使用distinct email, user_name, password時,所有這些列都必須是唯一的。

是否有任何其他方式插入選擇與uniq user_names,(我只需要第一行 - 與較低的ID)?

編輯我忘了提,我用mysql

回答

2

沒有測試我希望這樣的事情做的伎倆(假設ID列名爲id)

INSERT INTO new_table 
    SELECT email, user_name, password 
    FROM old_table 
    INNER JOIN 
     (SELECT MIN(id) FROM old_table GROUP by user_name) minids 
    ON minids.id = old_table.id 
+0

這工作,但需要將MIN(用戶標識符)添加爲用戶標識符(我的標識符是用戶標識符) – jcubic 2012-07-26 09:51:35