MariaDB
 sql >> Baza danych >  >> RDS >> MariaDB

3 sposoby na uzyskanie sortowań dostępnych w MariaDB

Jeśli chcesz znaleźć sortowanie dostępne w Twojej instalacji MariaDB, zapoznaj się z następującymi trzema metodami.

SHOW COLLATIONS Oświadczenie

SHOW COLLATIONS zestawienie to szybki i łatwy sposób na zwrócenie wszystkich zestawień dostępnych w MariaDB. Możesz użyć tego samego do zwrócenia wszystkich sortowań lub filtrowania wyników za pomocą LIKE i/lub WHERE klauzula.

Przykład:

SHOW COLLATION LIKE 'latin7%';

Wynik:

+-------------------------+---------+------+---------+----------+---------+
| Collation               | Charset | Id   | Default | Compiled | Sortlen |
+-------------------------+---------+------+---------+----------+---------+
| latin7_estonian_cs      | latin7  |   20 |         | Yes      |       1 |
| latin7_general_ci       | latin7  |   41 | Yes     | Yes      |       1 |
| latin7_general_cs       | latin7  |   42 |         | Yes      |       1 |
| latin7_bin              | latin7  |   79 |         | Yes      |       1 |
| latin7_general_nopad_ci | latin7  | 1065 |         | Yes      |       1 |
| latin7_nopad_bin        | latin7  | 1103 |         | Yes      |       1 |
+-------------------------+---------+------+---------+----------+---------+

W tym przypadku zawęziłem wyniki tylko do tych zestawień, które zaczynają się od latin7 .

Zauważ, że możemy dołączyć LIKE klauzula bezpośrednio po SHOW COLLATION tekst. Kiedy to robimy, wskazuje, które nazwy sortowania mają pasować.

Oto kolejny przykład, w którym używam zarówno WHERE klauzula i LIKE klauzula:

SHOW COLLATION 
WHERE Sortlen LIKE '4' 
AND Collation LIKE 'utf%';

Wynik:

+---------------------+---------+-----+---------+----------+---------+
| Collation           | Charset | Id  | Default | Compiled | Sortlen |
+---------------------+---------+-----+---------+----------+---------+
| utf8_thai_520_w2    | utf8    | 578 |         | Yes      |       4 |
| utf8mb4_thai_520_w2 | utf8mb4 | 610 |         | Yes      |       4 |
| utf16_thai_520_w2   | utf16   | 674 |         | Yes      |       4 |
| utf32_thai_520_w2   | utf32   | 738 |         | Yes      |       4 |
+---------------------+---------+-----+---------+----------+---------+

Schemat informacyjny COLLATIONS Tabela

information_schema.COLLATIONS tabela zawiera pełną listę obsługiwanych sortowań w MariaDB. To jest ta sama lista, co SHOW COLLATIONS powraca.

Dlatego możemy wysłać zapytanie do tej tabeli, aby zwrócić sortowanie, które chcemy zwrócić. Możemy również zawęzić kolumny tylko do tych, którymi jesteśmy zainteresowani.

Przykład:

SELECT * 
FROM information_schema.COLLATIONS
WHERE COLLATION_NAME LIKE 'utf%'
AND SORTLEN = '4';

Wynik:

+---------------------+--------------------+-----+------------+-------------+---------+
| COLLATION_NAME      | CHARACTER_SET_NAME | ID  | IS_DEFAULT | IS_COMPILED | SORTLEN |
+---------------------+--------------------+-----+------------+-------------+---------+
| utf8_thai_520_w2    | utf8               | 578 |            | Yes         |       4 |
| utf8mb4_thai_520_w2 | utf8mb4            | 610 |            | Yes         |       4 |
| utf16_thai_520_w2   | utf16              | 674 |            | Yes         |       4 |
| utf32_thai_520_w2   | utf32              | 738 |            | Yes         |       4 |
+---------------------+--------------------+-----+------------+-------------+---------+

Jak widać, zwraca te same kolumny, które SHOW COLLATIONS instrukcja powraca.

Biorąc pod uwagę, że używa standardowego SQL SELECT oświadczenie, możemy dostosować nasze wyniki na wiele sposobów. Możemy również zmniejszyć zwracane kolumny, połączyć tabelę z innymi tabelami itp.

Oto przykład zmniejszenia zwracanych kolumn:

SELECT 
    COLLATION_NAME, 
    CHARACTER_SET_NAME 
FROM information_schema.COLLATIONS
WHERE COLLATION_NAME LIKE 'utf%'
AND SORTLEN = '4';

Wynik:

+---------------------+--------------------+
| COLLATION_NAME      | CHARACTER_SET_NAME |
+---------------------+--------------------+
| utf8_thai_520_w2    | utf8               |
| utf8mb4_thai_520_w2 | utf8mb4            |
| utf16_thai_520_w2   | utf16              |
| utf32_thai_520_w2   | utf32              |
+---------------------+--------------------+

Schemat informacji COLLATION_CHARACTER_SET_APPLICABILITY Tabela

information_schema.COLLATION_CHARACTER_SET_APPLICABILITY tabela zawiera podzbiór information_schema.COLLATIONS stół. Zawiera te same zestawienia i zestawy znaków, ale to wszystko. Rozumiem przez to, że zawiera po prostu mniej kolumn.

Przykład:

SELECT * 
FROM information_schema.COLLATION_CHARACTER_SET_APPLICABILITY
LIMIT 10;

Wynik:

+-----------------------+--------------------+
| COLLATION_NAME        | CHARACTER_SET_NAME |
+-----------------------+--------------------+
| big5_chinese_ci       | big5               |
| big5_bin              | big5               |
| big5_chinese_nopad_ci | big5               |
| big5_nopad_bin        | big5               |
| dec8_swedish_ci       | dec8               |
| dec8_bin              | dec8               |
| dec8_swedish_nopad_ci | dec8               |
| dec8_nopad_bin        | dec8               |
| cp850_general_ci      | cp850              |
| cp850_bin             | cp850              |
+-----------------------+--------------------+

W tym przypadku użyłem LIMIT klauzula ograniczająca zwracane wiersze do zaledwie 10. W przeciwnym razie zwrócono by 322 wiersze.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak działa CEILING() w MariaDB

  2. Co nowego w MariaDB MaxScale 2.4

  3. Porównanie rozwiązania Oracle RAC HA z Galera Cluster for MySQL lub MariaDB

  4. MariaDB JSON_EXTRACT() Objaśnienie

  5. 3 sposoby na uzyskanie sortowań dostępnych w MariaDB