In MySQL is de ORD()
functie retourneert de numerieke waarde van het meest linkse teken van een bepaalde tekenreeks. Je geeft de string op als argument.
Als het meest linkse teken een multibyte-teken is, wordt de geretourneerde waarde berekend op basis van de numerieke waarden van de samenstellende bytes. Als het meest linkse teken geen multibyte-teken is, is de geretourneerde waarde de ASCII-code (dit is hetzelfde resultaat als bij het gebruik van de ASCII()
functie).
Syntaxis
De syntaxis gaat als volgt:
ORD(str)
Waar str
is de tekenreeks waarvan u de numerieke code van het meest linkse teken wilt.
Voorbeeld 1 – Basisgebruik
Hier is een voorbeeld om te demonstreren.
SELECT ORD('MySQL');
Resultaat:
+----------------+ | ASCII('MySQL') | +----------------+ | 77 | +----------------+
We kunnen dus zien dat het cijfer voor de letter M is 77 . Dit is precies hetzelfde resultaat dat we zouden krijgen bij gebruik van de ASCII()
functie, omdat de letter M valt binnen het ASCII-bereik.
Hier is een voorbeeld met de twee functies naast elkaar:
SELECT ASCII('M'), ORD('M');
Resultaat:
+------------+----------+ | ASCII('M') | ORD('M') | +------------+----------+ | 77 | 77 | +------------+----------+
Voorbeeld 2 – Multibyte-tekens
Hier is een voorbeeld dat multibyte-tekens gebruikt.
SELECT ORD('€'), ORD('á'), ORD('仮'), ORD('平'), ORD('✓');
Resultaat:
+------------+-----------+------------+------------+------------+ | ORD('€') | ORD('á') | ORD('仮') | ORD('平') | ORD('✓') | +------------+-----------+------------+------------+------------+ | 14844588 | 50081 | 14990254 | 15055283 | 14851219 | +------------+-----------+------------+------------+------------+
Voorbeeld 2 – Hoofdlettergevoeligheid
Hoofdletters hebben een andere numerieke waarde dan hun tegenhangers in kleine letters. Voorbeeld:
SELECT ORD('A'), ORD('a');
Resultaat:
+----------+----------+ | ORD('A') | ORD('a') | +----------+----------+ | 65 | 97 | +----------+----------+