gpt4 book ai didi

sql - 不区分大小写的重复 SQL

转载 作者:IT老高 更新时间:2023-10-29 00:19:08 26 4
gpt4 key购买 nike

所以我有一个用户表,其中 user.username 有很多重复项,例如:

usernameUsernameuserRnAme
johnJohnjOhn

这是一个错误,这三个记录应该只有一个。

我正在尝试提出一个 SQL 查询,该查询列出了按创建日期排序的所有这些案例,因此理想情况下,结果应该是这样的:

username jan01
useRnAme jan02
Username jan03
john feb01
John feb02
jOhn feb03

任何建议将不胜感激

最佳答案

暂且不考虑区分大小写的问题,基本的策略是:

 SELECT username, create_date FROM your_table
WHERE username IN
(SELECT username FROM your_table GROUP BY username HAVING COUNT(*) > 1)
ORDER BY username, create_date

许多 RDBMS(包括 MySQL,假设您对用户名列使用 CHAR 或 VARCHAR)默认执行不区分大小写的搜索。对于那些数据库,上述解决方案将起作用。要解决其他产品的区分大小写问题,请在特定于您的 RDBMS 的大写转换函数中包装除第一次出现的用户名之外的所有内容:

 SELECT username, create_date FROM your_table
WHERE UPPER(username) IN
(SELECT UPPER(username) FROM your_table GROUP BY UPPER(username) HAVING COUNT(*) > 1)
ORDER BY username, create_date

关于sql - 不区分大小写的重复 SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2694106/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com