"ZAZIKHAN'S" 现在,当我正常运行选-6ren">
gpt4 book ai didi

mysql - sql unique和where条件无法区分大小写数据

转载 作者:行者123 更新时间:2023-11-29 07:23:14 27 4
gpt4 key购买 nike

假设我有表A,其中包含字段名称brand,现在这个品牌字段有两行数据

Column `brand`
row1-> "zazikhan's"
row2-> "ZAZIKHAN'S"

现在,当我正常运行选择查询时,它会返回两行,例如

SELECT 
brand
FROM
`TableA`
WHERE brand="ZAZIKHAN'S"

但是我只期望一条记录,即 row2->"ZAZIKHAN'S" 但它返回了我两行。

Distinct 和 order by 函数的情况也是如此。例如

SELECT 
distinct(brand)
FROM
`TableA`
WHERE brand="ZAZIKHAN'S"

现在这个查询只返回一条记录,其中row1->zazikhan's,这很奇怪,我期待结果中的两行,因为两者都会根据情况发生变化

最佳答案

尝试使用 a case sensitive collation 转换您的字段就像latin1_general_cs:

SELECT DISTINCT CONVERT(brand USING latin1) COLLATE latin1_general_cs
FROM mytable

Demo here

关于mysql - sql unique和where条件无法区分大小写数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35360693/

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