Char (MySQL): verschil tussen versies
Naar navigatie springen
Naar zoeken springen
(Een tussenliggende versie door dezelfde gebruiker niet weergegeven) | |||
Regel 1: | Regel 1: | ||
Functie <code>CHAR (N, ... [USING charset_name])</code> interpreteert argumenten ''N'' als integere waardes, en retourneert de bijbehorende karakters volgens de opgegeven karakterset (met ASCII als standaard-karakterset). | Functie <code>CHAR (N, ... [USING charset_name])</code> interpreteert argumenten ''N'' als integere waardes, en retourneert de bijbehorende karakters volgens de opgegeven karakterset (met ASCII als standaard-karakterset). | ||
− | <code>char</code> | + | * Er worden alleen waardes tot en met 256 geaccepteerd. Waardes hierboven, worden gesplitst in aparte bytes |
+ | * Je kunt geen 'namen' of 'codenamen' voor karakters meegeven. Er is dus niet zoiets als <code>char(\nbsp)</code>. | ||
− | + | == Voorbeelden == | |
− | |||
− | |||
− | |||
− | Voorbeelden | ||
<pre> | <pre> | ||
Regel 55: | Regel 52: | ||
</pre> | </pre> | ||
+ | Je kunt de te gebruiken karakterset specificeren. Ik ken daar zo snel geen toepassing voor, omdat <code>char</code> uitsluitend waardes 0-255 accepteert, en voor de karaktersets die ik in het wild tegenkome, zijn de eerste 256 waardes hetzelfde als ASCII. Desalniettemin, zo doe je dat: | ||
+ | |||
+ | <pre> | ||
+ | select char(65 using utf8); | ||
+ | >>> A | ||
+ | </pre> | ||
== Bronnen == | == Bronnen == | ||
* https://www.w3resource.com/mysql/string-functions/mysql-char-function.php | * https://www.w3resource.com/mysql/string-functions/mysql-char-function.php | ||
* https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_char | * https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_char |
Huidige versie van 1 dec 2019 om 06:36
Functie CHAR (N, ... [USING charset_name])
interpreteert argumenten N als integere waardes, en retourneert de bijbehorende karakters volgens de opgegeven karakterset (met ASCII als standaard-karakterset).
- Er worden alleen waardes tot en met 256 geaccepteerd. Waardes hierboven, worden gesplitst in aparte bytes
- Je kunt geen 'namen' of 'codenamen' voor karakters meegeven. Er is dus niet zoiets als
char(\nbsp)
.
Voorbeelden
mysql> select char(65); +----------+ | char(65) | +----------+ | A | +----------+ 1 row in set (0,00 sec)
En dat kan ook in hexadecimaal:
mysql> select char(0x41); +------------+ | char(0x41) | +------------+ | A | +------------+ 1 row in set (0,01 sec)
Voor meerdere tekens achter elkaar, moet je de cijfers scheiden met komma's. Bv.:
select char(65, 66, 67); >>> ABC select char(0x41, 0x42, 0x43); >>> ABC
Je kunt char
moeiteloos incorporeren in tekststrings. Bv.:
select * from device_tmp where brand like concat("%", char(65), "%");
Dat geldt ook voor meerdere karakters:
select * from device_tmp where brand like concat("%", char(65), char(69), "%"); >>> AEG...
Je kunt de te gebruiken karakterset specificeren. Ik ken daar zo snel geen toepassing voor, omdat char
uitsluitend waardes 0-255 accepteert, en voor de karaktersets die ik in het wild tegenkome, zijn de eerste 256 waardes hetzelfde als ASCII. Desalniettemin, zo doe je dat:
select char(65 using utf8); >>> A