duangang4001 2013-02-26 18:04 采纳率: 0%
浏览 102
已采纳

在PHP中使用OCI强制不区分大小写(oracle数据库)

Well, the title explains it well...

I'm using OCI to explore a Oracle database in PHP.

The trouble is that the database is case sensitive, so... when I execute a sentence like

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

returns an array like this

COUNT USERNAME
213   EMG_COTORA
31    EMG_cotora
123   emg_cotora

This because the database is case sensitive, so... How do I force case insensitive without modifying the database? (I haven't write permission)

  • 写回答

1条回答 默认 最新

  • doujianzi8521 2013-02-26 18:08
    关注

    I assume that in your actual query you have a GROUP BY clause. You would just need to group by the UPPER(username)

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

    You could also, of course, SELECT and GROUP BY lower(username) or initcap(username) or any other function that converts the different username values into a single value.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?