MySQL8.0 中文参考手册  / 第10章 字符集、排序规则、Unicode  / 10.8 整理问题  /  10.8.1 在 SQL 语句中使用 COLLATE

10.8.1 在 SQL 语句中使用 COLLATE

使用该COLLATE子句,您可以覆盖用于比较的任何默认排序规则。 COLLATE可用于 SQL 语句的各个部分。这里有些例子:

  • ORDER BY

    Press CTRL+C to copy
    SELECT k FROM t1 ORDER BY k COLLATE latin1_german2_ci;
  • AS

    Press CTRL+C to copy
    SELECT k COLLATE latin1_german2_ci AS k1 FROM t1 ORDER BY k1;
  • GROUP BY

    Press CTRL+C to copy
    SELECT k FROM t1 GROUP BY k COLLATE latin1_german2_ci;
  • 使用聚合函数:

    Press CTRL+C to copy
    SELECT MAX(k COLLATE latin1_german2_ci) FROM t1;
  • DISTINCT

    Press CTRL+C to copy
    SELECT DISTINCT k COLLATE latin1_german2_ci FROM t1;
  • WHERE

    Press CTRL+C to copy
    SELECT * FROM t1 WHERE _latin1 'Müller' COLLATE latin1_german2_ci = k;
    Press CTRL+C to copy
    SELECT * FROM t1 WHERE k LIKE _latin1 'Müller' COLLATE latin1_german2_ci;
  • HAVING

    Press CTRL+C to copy
    SELECT k FROM t1 GROUP BY k HAVING k = _latin1 'Müller' COLLATE latin1_german2_ci;