MySQL SELECT DISTINCT是不区分大小写的?

时间:2014-03-24 14:35:33

标签: python mysql sql r

我正在尝试清理从pandas数据帧导入MySQL的一些数据。

有些显示为:

VARIABLE

其他人:

Variable

当我使用

SELECT DISTINCT

似乎MySQL将Variable视为VARIABLE的等价物。

当我将其导入R时,虽然R将Variable和VARIABLE视为不同。 并且正在运行

as.factor

给了我两个因素。 如何使MySQL的SELECT DISTINCT区分大小写,以便我可以检测并修复导入R的数据进行分析?

2 个答案:

答案 0 :(得分:0)

如果您想检测表格中的较低和较高的案例,请使用此

   SELECT name                        //this to select lower names
   FROM yourtable 
   where name = BINARY LOWER(Name)

   union all

   SELECT name                      //this to select upper names
   FROM yourtable 
   where name = BINARY UPPER(Name)

   union all                       // this to select not lower and not upper

   SELECT name 
   FROM yourtable 
   where name != BINARY UPPER(Name)
   and   name != BINARY LOWER(Name)

DEMO HERE

答案 1 :(得分:0)

你可以使用:

SELECT DISTINCT BINARY Name
FROM tablename

BINARY运算符会将字符串转换为BINARY字符串,二进制字符串之间的比较将区分大小写。