按字符串的学说顺序区分大小写

时间:2019-11-08 10:18:57

标签: php sql oracle symfony doctrine

在我的Symfony应用中,当我使用查询生成器或其他方式进行排序时,顺序是错误的。

如果我通过sql客户端执行请求,则结果正确。

示例:

    $rsm = new ResultSetMapping();
    $rsm->addScalarResult('NAME', 'NAME');

    //Without uppercase
    $sql = "SELECT * FROM Category ORDER BY NAME ASC";
    $query = $em->createNativeQuery($sql, $rsm);
    $categories = $query->getResult();
    dump($categories);
    /*
     * Return:
     *  - Bcd
     *  - abc
     *  - xyz
     */

    //With uppercase
    $sql = "SELECT * FROM Category ORDER BY UPPER(NAME) ASC";
    $query = $em->createNativeQuery($sql, $rsm);
    $categories = $query->getResult();
    dump($categories);
    /*
     * Return:
     *  - abc
     *  - Bcd
     *  - xyz
     */

带有命令行的SQL查询:

SQL> select NAME from Category order by NAME ASC;

NAME
-------------------------------------------------------------------
abc
Bcd
xyz

您有任何解决此问题的想法吗?

0 个答案:

没有答案