The Postgresql ASCII function takes in a character and returns the ASCII value. If you pass in a unicode character or rune, the function will return the unicode value.
The basic syntax of a ASCII is as follows:
SELECT ascii(string);
We will be using docker in this article, but feel free to install your database locally instead. Once you have docker installed, create a new file called docker-compose.yml
and add the following.
version: '3'
services:
db:
image: 'postgres:latest'
ports:
- 5432:5432
environment:
POSTGRES_USER: username
POSTGRES_PASSWORD: password
POSTGRES_DB: default_database
volumes:
- psqldata:/var/lib/postgresql
phpmyadmin:
image: phpmyadmin/phpmyadmin
links:
- db
environment:
PMA_HOST: db
PMA_PORT: 3306
PMA_ARBITRARY: 1
restart: always
ports:
- 8081:80
volumes:
psqldata:
Next, run docker-compose up
.
Now, navigate to http://localhost:8081/
to access phpMyAdmin. Then log in with the username root
and pass root_pass
.
Click the SQL tab and you are ready to go.
In the basic example, we pass in an ascii character and the function will return the ascii code corresponding to that character.
You can see a reference of ascii characters here: https://web.archive.org/web/20220519180720/https://www.ascii-code.com/
SELECT ascii('Z');
ascii |
---|
90 |
If we pass a string instead, postgresql will only return the ascii value of the first character.
SELECT ascii('testing');
ascii |
---|
116 |
This is the same value if we only pass the 't' character.
SELECT ascii('t');
ascii |
---|
116 |
And finally, we can pass a unicode character to get a unicode value.
You can find a list of unicode values here: https://en.wikipedia.org/wiki/List_of_Unicode_characters
SELECT ascii('⏰');
ascii |
---|
9200 |