【问题标题】:sql: filter string results by uppercasedsql:按大写过滤字符串结果
【发布时间】:2018-02-27 16:25:56
【问题描述】:

所以我有一个 SQL 查询,它每行返回一个名称和一个 ID。问题是名称值,有些是大写的,有些是小写的。有问题的查询是:

SELECT DISTINCT ttd.name, ttd.tid
FROM taxonomy_term_data ttd
INNER JOIN field_data_field_xxxxxx_paraules_clau fdfspc ON ttd.tid = fdfspc.field_xxxxxx_paraules_clau_tid
ORDER BY ttd.name

结果是这样的:

alfred | 1
ALBERT | 2
MARIA  | 3
Sam    | 4

我想要的是一个 WHERE 子句,只获取具有大写名称的行,例如:

WHERE ttd.name IS UPPERCASED

我一直在互联网上搜索,但我只得到关于大写或大写文本的结果。

【问题讨论】:

标签: mysql sql


【解决方案1】:

这可以通过 mysql 中的 BINARY 比较和 UPPER() 来完成

WHERE ttd.name = BINARY UPPER(ttd.name)

来源:How to find all upper case strings in a MySQL table?

【讨论】:

  • 成功了!我试过没有二进制文件,什么也没有。但像这样工作正常。
猜你喜欢
  • 1970-01-01
  • 2013-10-31
  • 1970-01-01
  • 1970-01-01
  • 2012-07-04
  • 2021-10-15
  • 2015-03-23
  • 2014-01-04
  • 2021-02-12
相关资源
最近更新 更多