0

嗯,标题解释的很好……

我正在使用OCI在 PHP 中探索 Oracle 数据库。

问题是数据库区分大小写,所以......当我执行类似的句子时

SELECT COUNT(username) count, username FROM transactions WHERE username IS NOT NULL GROUP BY username

返回一个这样的数组

COUNT USERNAME
213   EMG_COTORA
31    EMG_cotora
123   emg_cotora

这是因为数据库区分大小写,所以...如何在不修改数据库的情况下强制不区分大小写?(我没有写权限)

4

1 回答 1

4

我假设在您的实际查询中您有一个GROUP BY子句。您只需要按UPPER(username)

SELECT upper(username), count(*) cnt
  FROM transactions
 WHERE username IS NOT NULL
 GROUP BY upper(username)

当然,您也可以使用SELECTGROUP BY lower(username)/initcap(username)或任何其他将不同用户名值转换为单个值的函数。

于 2013-02-26T18:08:33.390 回答