sql >> Databasteknik >  >> RDS >> Mysql

CHAR() Exempel i MySQL

I MySQL, CHAR() funktion returnerar tecknet för varje passerat heltal. Med andra ord kan du skicka in ett eller flera heltal, och funktionen kommer att tolka dessa som kodvärden för strängtecken och returnera motsvarande sträng för varje kodvärde.

Syntax

Syntaxen ser ut så här:

CHAR(N,... [USING charset_name])

Där N,... är ett eller flera heltal, och USING charset_name är ett valfritt argument som du kan använda för att ange vilken teckenuppsättning som ska användas.

Exempel 1 – Grundläggande användning

Här är ett exempel för att demonstrera den grundläggande användningen:

SELECT CHAR(67, 97, 116);

Resultat:

+-------------------+
| CHAR(67, 97, 116) |
+-------------------+
| Cat               |
+-------------------+

Så om vi ändrar ett av heltalen får vi en annan sträng:

SELECT CHAR(66, 97, 116);

Resultat:

+-------------------+
| CHAR(66, 97, 116) |
+-------------------+
| Bat               |
+-------------------+

Exempel 2 – ANVÄNDNINGSKlausulen

Här är ett exempel på hur du lägger till USING sats för att specificera UTF-8-kodning:

SELECT CHAR(0xc2a9 USING utf8);

Resultat:

+-------------------------+
| CHAR(0xc2a9 USING utf8) |
+-------------------------+
| ©                       |
+-------------------------+

Och här är ett annat exempel där jag anger unicode-kodpunkten:

SELECT CHAR(0x027FE USING ucs2);

Resultat:

+--------------------------+
| CHAR(0x027FE USING ucs2) |
+--------------------------+
| ⟾                        |
+--------------------------+

Exempel 3 – Flera resultatbyte

Argument större än 255 konverteras till flera resultatbyte. Här är ett exempel att visa.

SELECT 
  HEX(CHAR(1,0)), 
  HEX(CHAR(256)),
  HEX(CHAR(1,1)), 
  HEX(CHAR(257));

Resultat:

+----------------+----------------+----------------+----------------+
| HEX(CHAR(1,0)) | HEX(CHAR(256)) | HEX(CHAR(1,1)) | HEX(CHAR(257)) |
+----------------+----------------+----------------+----------------+
| 0100           | 0100           | 0101           | 0101           |
+----------------+----------------+----------------+----------------+

Och om vi ökar siffrorna:

SELECT 
  HEX(CHAR(7,0)), 
  HEX(CHAR(1792)),
  HEX(CHAR(7,7)), 
  HEX(CHAR(1799));

Resultat:

+----------------+-----------------+----------------+-----------------+
| HEX(CHAR(7,0)) | HEX(CHAR(1792)) | HEX(CHAR(7,7)) | HEX(CHAR(1799)) |
+----------------+-----------------+----------------+-----------------+
| 0700           | 0700            | 0707           | 0707            |
+----------------+-----------------+----------------+-----------------+

  1. Finns det en LastIndexOf i SQL Server?

  2. Så här avslutar du PostgreSQL kommandoradsverktyg:psql

  3. Associera tabeller med hjälp av Room-databasen i Android Studio

  4. Rekursiv fråga används för transitiv stängning