แƒกแƒแƒ”แƒญแƒ•แƒ แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜

แƒ›แƒแƒ— แƒ’แƒแƒ แƒ”แƒ’แƒœแƒแƒ‘แƒแƒจแƒ˜ แƒกแƒแƒ”แƒญแƒ•แƒ แƒแƒ แƒแƒคแƒ”แƒ แƒ˜แƒ. แƒฃแƒคแƒ แƒ แƒ›แƒ”แƒขแƒ˜แƒช, แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒ™แƒแƒ แƒ’แƒแƒ“ แƒ“แƒ แƒ“แƒ˜แƒ“แƒ˜ แƒฎแƒœแƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ•แƒšแƒแƒ‘แƒแƒจแƒ˜ แƒœแƒแƒชแƒœแƒแƒ‘แƒ˜แƒช แƒ™แƒ˜ แƒ’แƒ”แƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒแƒ—. แƒ›แƒแƒ’แƒ แƒแƒ› แƒ”แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ›แƒแƒœแƒแƒ›, แƒกแƒแƒœแƒแƒ› แƒแƒ  แƒจแƒ”แƒแƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒ— แƒ›แƒแƒ—. แƒแƒฅ แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ”แƒœ แƒ—แƒแƒ•แƒ˜แƒแƒœแƒ— แƒ›แƒ–แƒแƒ™แƒ•แƒ แƒฃแƒš แƒ‘แƒฃแƒœแƒ”แƒ‘แƒแƒก, แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ”แƒœ แƒกแƒ แƒฃแƒšแƒ˜แƒแƒ“ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒแƒ“, แƒ•แƒ˜แƒ“แƒ แƒ” แƒ—แƒฅแƒ•แƒ”แƒœ แƒ›แƒแƒ”แƒšแƒแƒ“แƒ˜แƒ—. แƒ“แƒ แƒฎแƒแƒœแƒ“แƒแƒฎแƒแƒœ แƒ˜แƒกแƒ”แƒ— แƒ แƒแƒฆแƒแƒชแƒแƒก แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ”แƒœ, แƒ แƒ˜แƒ—แƒแƒช แƒ—แƒ›แƒแƒก แƒ’แƒ˜แƒฌแƒ”แƒ•แƒก โ€“ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ™แƒแƒ แƒ’แƒแƒ•แƒ”แƒœ แƒ›แƒแƒ—แƒ—แƒ•แƒ˜แƒก แƒ›แƒ˜แƒœแƒ“แƒแƒ‘แƒ˜แƒš แƒกแƒแƒ˜แƒ“แƒฃแƒ›แƒšแƒ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒก. แƒ แƒแƒชแƒ แƒ›แƒแƒ— แƒฃแƒžแƒ˜แƒ แƒ˜แƒกแƒžแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ˜แƒ—, แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒแƒชแƒฎแƒแƒ“แƒ”แƒ‘แƒ”แƒœ, แƒ แƒแƒ› แƒ”แƒ แƒ—แƒ›แƒแƒœแƒ”แƒ—แƒก แƒแƒ  แƒ˜แƒชแƒœแƒแƒ‘แƒ”แƒœ, แƒ—แƒฃแƒ›แƒชแƒ แƒฉแƒ แƒ“แƒ˜แƒšแƒจแƒ˜ แƒ”แƒ แƒ—แƒกแƒ แƒ“แƒ แƒ˜แƒ›แƒแƒ•แƒ” แƒ™แƒแƒžแƒแƒขแƒ˜แƒก แƒฅแƒ•แƒ”แƒจ แƒ‘แƒ”แƒ•แƒ แƒก แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ”แƒœ. แƒ“แƒ แƒแƒ แƒกแƒแƒ‘แƒแƒšแƒแƒแƒ“ แƒ›แƒ˜แƒ˜แƒงแƒ•แƒแƒœแƒแƒ— แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒกแƒฃแƒคแƒ—แƒ แƒฌแƒงแƒแƒšแƒจแƒ˜. แƒ›แƒแƒ“แƒ˜แƒ— แƒ’แƒแƒ•แƒฃแƒ›แƒ™แƒšแƒแƒ•แƒ“แƒ”แƒ— แƒแƒ› แƒกแƒแƒ”แƒญแƒ•แƒ แƒขแƒ˜แƒžแƒ”แƒ‘แƒกแƒแƒช.

PostgreSQL-แƒจแƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒแƒ™แƒ แƒ”แƒคแƒ, แƒ›แƒ—แƒ”แƒšแƒ˜ แƒ—แƒแƒ•แƒ˜แƒกแƒ˜ แƒšแƒแƒ’แƒ˜แƒ™แƒ˜แƒ—, แƒ–แƒแƒ’แƒฏแƒ”แƒ  แƒซแƒแƒšแƒ˜แƒแƒœ แƒฃแƒชแƒœแƒแƒฃแƒ  แƒกแƒ˜แƒฃแƒ แƒžแƒ แƒ˜แƒ–แƒ”แƒ‘แƒก แƒ˜แƒฌแƒ•แƒ”แƒ•แƒก. แƒแƒ› แƒกแƒขแƒแƒขแƒ˜แƒแƒจแƒ˜ แƒจแƒ”แƒ•แƒ”แƒชแƒ“แƒ”แƒ‘แƒ˜แƒ— แƒ’แƒแƒœแƒ•แƒ›แƒแƒ แƒขแƒแƒ— แƒ›แƒแƒ—แƒ˜ แƒ–แƒแƒ’แƒ˜แƒ”แƒ แƒ—แƒ˜ แƒฃแƒชแƒœแƒแƒฃแƒ แƒแƒ‘แƒ, แƒ’แƒแƒ•แƒ˜แƒ’แƒแƒ— แƒ›แƒแƒ—แƒ˜ แƒฃแƒชแƒœแƒแƒฃแƒ แƒ˜ แƒฅแƒชแƒ”แƒ•แƒ˜แƒก แƒ›แƒ˜แƒ–แƒ”แƒ–แƒ˜ แƒ“แƒ แƒ’แƒแƒ•แƒ˜แƒ’แƒแƒ—, แƒ แƒแƒ’แƒแƒ  แƒแƒ  แƒจแƒ”แƒ’แƒฎแƒ•แƒ“แƒ”แƒ— แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒงแƒแƒ•แƒ”แƒšแƒ“แƒฆแƒ˜แƒฃแƒ  แƒžแƒ แƒแƒฅแƒขแƒ˜แƒ™แƒแƒจแƒ˜. แƒกแƒ˜แƒ›แƒแƒ แƒ—แƒšแƒ” แƒ’แƒ˜แƒ—แƒฎแƒ แƒแƒ—, แƒ”แƒก แƒกแƒขแƒแƒขแƒ˜แƒแƒช แƒจแƒ”แƒ•แƒแƒ“แƒ’แƒ˜แƒœแƒ”, แƒ แƒแƒ’แƒแƒ แƒช แƒ”แƒ แƒ—แƒ’แƒ•แƒแƒ แƒ˜ แƒกแƒแƒชแƒœแƒแƒ‘แƒแƒ แƒ แƒฌแƒ˜แƒ’แƒœแƒ˜ แƒฉแƒ”แƒ›แƒ—แƒ•แƒ˜แƒก, แƒกแƒแƒชแƒœแƒแƒ‘แƒแƒ แƒ แƒฌแƒ˜แƒ’แƒœแƒ˜, แƒ แƒแƒ›แƒšแƒ˜แƒก แƒ›แƒแƒฎแƒกแƒ”แƒœแƒ˜แƒ”แƒ‘แƒแƒช แƒกแƒแƒ™แƒแƒ›แƒแƒ—แƒ แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ”แƒ‘แƒจแƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒแƒ“แƒ. แƒแƒ›แƒ˜แƒขแƒแƒ›, แƒ˜แƒก แƒจแƒ”แƒ˜แƒ•แƒกแƒ”แƒ‘แƒ, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒแƒฆแƒ›แƒแƒฉแƒœแƒ“แƒ”แƒ‘แƒ แƒแƒฎแƒแƒšแƒ˜ แƒกแƒ˜แƒฃแƒ แƒžแƒ แƒ˜แƒ–แƒ”แƒ‘แƒ˜ แƒกแƒแƒ”แƒญแƒ•แƒ แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜แƒกแƒ’แƒแƒœ. แƒ›แƒแƒจ, แƒฌแƒแƒ•แƒ˜แƒ“แƒ”แƒ—, แƒแƒฐ แƒ“แƒแƒฃแƒฆแƒแƒšแƒแƒ•แƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒ˜แƒก แƒขแƒ แƒ”แƒ™แƒ”แƒ แƒ”แƒ‘แƒ˜!

แƒกแƒแƒฅแƒ›แƒ” แƒœแƒแƒ›แƒ”แƒ  แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜. แƒ แƒ”แƒแƒšแƒฃแƒ แƒ˜ / แƒแƒ แƒ›แƒแƒ’แƒ˜ แƒกแƒ˜แƒ–แƒฃแƒกแƒขแƒ” / แƒ แƒ˜แƒชแƒฎแƒ•แƒ˜แƒ—แƒ˜ / แƒคแƒฃแƒšแƒ˜

แƒ แƒแƒ’แƒแƒ แƒช แƒฉแƒแƒœแƒก, แƒ แƒ˜แƒชแƒฎแƒ•แƒ˜แƒ—แƒ˜ แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜ แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒœแƒแƒ™แƒšแƒ”แƒ‘แƒแƒ“ แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒฃแƒ แƒ˜แƒ แƒฅแƒชแƒ”แƒ•แƒแƒจแƒ˜ แƒกแƒ˜แƒฃแƒ แƒžแƒ แƒ˜แƒ–แƒ”แƒ‘แƒ˜แƒก แƒ—แƒ•แƒแƒšแƒกแƒแƒ–แƒ แƒ˜แƒกแƒ˜แƒ—. แƒ›แƒแƒ’แƒ แƒแƒ› แƒ แƒแƒ’แƒแƒ แƒ˜แƒช แƒแƒ  แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก. แƒแƒกแƒ” แƒ แƒแƒ›, แƒ“แƒแƒ•แƒ˜แƒฌแƒงแƒแƒ— แƒ›แƒแƒ—แƒ—แƒแƒœ. แฒ˜แƒกแƒ”โ€ฆ

แƒ“แƒแƒ—แƒ•แƒšแƒ แƒ“แƒแƒ’แƒแƒ•แƒ˜แƒฌแƒงแƒ“แƒ

SELECT 0.1::real = 0.1

?column?
boolean
---------
f

แฒ แƒ แƒ›แƒแƒฎแƒ“แƒ? แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ แƒ˜แƒก แƒแƒ แƒ˜แƒก, แƒ แƒแƒ› PostgreSQL แƒ’แƒแƒ แƒ“แƒแƒฅแƒ›แƒœแƒ˜แƒก แƒ“แƒแƒฃแƒขแƒ˜แƒžแƒ”แƒ‘แƒ”แƒš แƒ›แƒฃแƒ“แƒ›แƒ˜แƒ• 0.1-แƒก แƒแƒ แƒ›แƒแƒ’ แƒกแƒ˜แƒ–แƒฃแƒกแƒขแƒ˜แƒ— แƒ“แƒ แƒชแƒ“แƒ˜แƒšแƒแƒ‘แƒก แƒจแƒ”แƒแƒ“แƒแƒ แƒแƒก แƒ›แƒแƒก แƒ แƒ”แƒแƒšแƒฃแƒ แƒ˜ แƒขแƒ˜แƒžแƒ˜แƒก 0.1-แƒ—แƒแƒœ. แƒ“แƒ แƒ”แƒก แƒกแƒ แƒฃแƒšแƒ˜แƒแƒ“ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒ! แƒ˜แƒ“แƒ”แƒ แƒแƒ แƒ˜แƒก แƒ แƒ”แƒแƒšแƒฃแƒ แƒ˜ แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒ‘แƒ˜แƒก แƒฌแƒแƒ แƒ›แƒแƒ“แƒ’แƒ”แƒœแƒ แƒ›แƒแƒœแƒฅแƒแƒœแƒ˜แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒจแƒ˜. แƒ•แƒ˜แƒœแƒแƒ˜แƒ“แƒแƒœ 0.1 แƒแƒ  แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒฌแƒแƒ แƒ›แƒแƒ“แƒ’แƒ”แƒœแƒ˜แƒšแƒ˜ แƒ˜แƒงแƒแƒก แƒ แƒแƒ’แƒแƒ แƒช แƒกแƒแƒกแƒ แƒฃแƒšแƒ˜ แƒแƒ แƒแƒ‘แƒ˜แƒ—แƒ˜ แƒฌแƒ˜แƒšแƒแƒ“แƒ˜ (แƒ”แƒก แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ 0.0(0011) แƒแƒ แƒแƒ‘แƒ˜แƒ—แƒจแƒ˜), แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒ‘แƒ˜แƒขแƒ˜แƒก แƒกแƒ˜แƒฆแƒ แƒ›แƒ˜แƒก แƒ›แƒฅแƒแƒœแƒ” แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒ‘แƒ˜ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ, แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒแƒ“, แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒแƒ  แƒแƒ แƒ˜แƒแƒœ แƒขแƒแƒšแƒ˜. แƒ–แƒแƒ’แƒแƒ“แƒแƒ“, แƒ”แƒก แƒชแƒแƒšแƒ™แƒ” แƒกแƒขแƒแƒขแƒ˜แƒ˜แƒก แƒ—แƒ”แƒ›แƒแƒ แƒ“แƒ แƒฃแƒคแƒ แƒ แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒแƒ“ แƒแƒฅ แƒแƒ  แƒ“แƒแƒ•แƒฌแƒ”แƒ .

แƒกแƒแƒ˜แƒ“แƒแƒœ แƒ›แƒแƒ“แƒ˜แƒก แƒจแƒ”แƒชแƒ“แƒแƒ›แƒ?

SELECT double precision(1)

ERROR:  syntax error at or near "("
LINE 1: SELECT double precision(1)
                               ^
********** ะžัˆะธะฑะบะฐ **********
ERROR: syntax error at or near "("
SQL-ัะพัั‚ะพัะฝะธะต: 42601
ะกะธะผะฒะพะป: 24

แƒ‘แƒ”แƒ•แƒ แƒ›แƒ แƒ˜แƒชแƒ˜แƒก, แƒ แƒแƒ› PostgreSQL แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒแƒซแƒšแƒ”แƒ•แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒฃแƒ  แƒœแƒแƒขแƒแƒชแƒ˜แƒแƒก แƒขแƒ˜แƒžแƒ˜แƒก แƒฉแƒแƒ›แƒแƒกแƒฎแƒ›แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒแƒœแƒฃ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒฌแƒ”แƒ แƒแƒ— แƒแƒ แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ 1::int, แƒแƒ แƒแƒ›แƒ”แƒ“ int(1), แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ”แƒฅแƒ•แƒ˜แƒ•แƒแƒšแƒ”แƒœแƒขแƒฃแƒ แƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ. แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ แƒ แƒ˜แƒ› แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ›แƒ”แƒšแƒ—แƒ แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜ แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒกแƒ˜แƒขแƒงแƒ•แƒ˜แƒกแƒ’แƒแƒœ แƒจแƒ”แƒ“แƒ’แƒ”แƒ‘แƒ! แƒแƒ›แƒ˜แƒขแƒแƒ›, แƒ—แƒฃ แƒ’แƒกแƒฃแƒ แƒ— แƒชแƒ˜แƒคแƒ แƒฃแƒšแƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ˜แƒก แƒ’แƒแƒแƒ แƒ›แƒแƒ’แƒ”แƒ‘แƒ แƒกแƒ˜แƒ–แƒฃแƒกแƒขแƒ˜แƒก แƒขแƒ˜แƒžแƒ–แƒ” แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒฃแƒ แƒ˜ แƒคแƒแƒ แƒ›แƒ˜แƒ—, แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ— แƒแƒ› แƒขแƒ˜แƒžแƒ˜แƒก float8, แƒแƒœแƒฃ SELECT float8(1).

แƒ แƒ แƒแƒ แƒ˜แƒก แƒฃแƒกแƒแƒกแƒ แƒฃแƒšแƒแƒ‘แƒแƒ–แƒ” แƒ“แƒ˜แƒ“แƒ˜?

SELECT 'Infinity'::double precision < 'NaN'::double precision

?column?
boolean
---------
t

แƒจแƒ”แƒฎแƒ”แƒ“แƒ” แƒ แƒแƒ’แƒแƒ แƒ˜แƒ! แƒ—แƒฃแƒ แƒ›แƒ” แƒแƒ แƒ˜แƒก แƒ แƒแƒฆแƒแƒช แƒฃแƒกแƒแƒกแƒ แƒฃแƒšแƒแƒ‘แƒแƒ–แƒ” แƒ“แƒ˜แƒ“แƒ˜ แƒ“แƒ แƒ”แƒก แƒแƒ แƒ˜แƒก NaN! แƒแƒ›แƒแƒ•แƒ“แƒ แƒแƒฃแƒšแƒแƒ“, PostgreSQL แƒ“แƒแƒ™แƒฃแƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒ’แƒฃแƒšแƒฌแƒ แƒคแƒ”แƒšแƒ˜ แƒ—แƒ•แƒแƒšแƒ”แƒ‘แƒ˜แƒ— แƒ’แƒ•แƒ˜แƒงแƒฃแƒ แƒ”แƒ‘แƒก แƒ“แƒ แƒแƒ›แƒขแƒ™แƒ˜แƒชแƒ”แƒ‘แƒก, แƒ แƒแƒ› NaN แƒแƒจแƒ™แƒแƒ แƒแƒ“ แƒแƒฆแƒ”แƒ›แƒแƒขแƒ”แƒ‘แƒ แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ  แƒกแƒฎแƒ•แƒ แƒ แƒ˜แƒชแƒฎแƒ•แƒก แƒ“แƒ, แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒแƒ“, แƒฃแƒกแƒแƒกแƒ แƒฃแƒšแƒแƒ‘แƒแƒก. แƒกแƒแƒžแƒ˜แƒ แƒ˜แƒกแƒžแƒ˜แƒ แƒแƒ แƒแƒกแƒ”แƒ•แƒ” -NaN. แƒ’แƒแƒ›แƒแƒ แƒฏแƒแƒ‘แƒ แƒ›แƒแƒ—แƒ”แƒ›แƒแƒขแƒ˜แƒ™แƒ˜แƒก แƒ›แƒแƒงแƒ•แƒแƒ แƒฃแƒšแƒ”แƒ‘แƒ! แƒ›แƒแƒ’แƒ แƒแƒ› แƒฃแƒœแƒ“แƒ แƒ’แƒ•แƒแƒฎแƒกแƒแƒ•แƒ“แƒ”แƒก, แƒ แƒแƒ› แƒ”แƒก แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒก แƒ แƒ”แƒแƒšแƒฃแƒ แƒ˜ แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒจแƒ˜.

แƒ—แƒ•แƒแƒšแƒ˜แƒก แƒ“แƒแƒ›แƒ แƒ’แƒ•แƒแƒšแƒ”แƒ‘แƒ

SELECT round('2.5'::double precision)
     , round('2.5'::numeric)

      round      |  round
double precision | numeric
-----------------+---------
2                | 3

แƒ›แƒแƒ แƒ˜แƒ’แƒ˜ แƒ›แƒแƒฃแƒšแƒแƒ“แƒœแƒ”แƒšแƒ˜ แƒ›แƒ˜แƒกแƒแƒšแƒ›แƒ”แƒ‘แƒ แƒ‘แƒแƒ–แƒ˜แƒ“แƒแƒœ. แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ”แƒ แƒ—แƒฎแƒ”แƒš, แƒ’แƒแƒฎแƒกแƒแƒ•แƒ“แƒ”แƒ—, แƒ แƒแƒ› แƒแƒ แƒ›แƒแƒ’แƒ˜ แƒกแƒ˜แƒ–แƒฃแƒกแƒขแƒ” แƒ“แƒ แƒ แƒ˜แƒชแƒฎแƒ•แƒ˜แƒ—แƒ˜ แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ“แƒแƒ›แƒ แƒ’แƒ•แƒแƒšแƒ”แƒ‘แƒ˜แƒก แƒ”แƒคแƒ”แƒฅแƒขแƒก แƒ˜แƒซแƒšแƒ”แƒ•แƒ. แƒ แƒ˜แƒชแƒฎแƒ•แƒ˜แƒ— - แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ•แƒ˜, แƒ แƒแƒ“แƒ”แƒกแƒแƒช 0,5 แƒ“แƒแƒ›แƒ แƒ’แƒ•แƒแƒšแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ–แƒ”แƒ›แƒแƒ—, แƒฎแƒแƒšแƒ แƒแƒ แƒ›แƒแƒ’แƒ˜ แƒกแƒ˜แƒ–แƒฃแƒกแƒขแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก - 0,5 แƒ›แƒ แƒ’แƒ•แƒแƒšแƒ“แƒ”แƒ‘แƒ แƒฃแƒแƒฎแƒšแƒแƒ”แƒก แƒšแƒฃแƒฌแƒ˜ แƒ แƒ˜แƒชแƒฎแƒ•แƒ˜แƒกแƒ™แƒ”แƒœ.

แƒคแƒฃแƒšแƒ˜ แƒ แƒแƒฆแƒแƒช แƒ’แƒแƒœแƒกแƒแƒ™แƒฃแƒ—แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ

SELECT '10'::money::float8

ERROR:  cannot cast type money to double precision
LINE 1: SELECT '10'::money::float8
                          ^
********** ะžัˆะธะฑะบะฐ **********
ERROR: cannot cast type money to double precision
SQL-ัะพัั‚ะพัะฝะธะต: 42846
ะกะธะผะฒะพะป: 19

PostgreSQL-แƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—, แƒคแƒฃแƒšแƒ˜ แƒแƒ  แƒแƒ แƒ˜แƒก แƒ แƒ”แƒแƒšแƒฃแƒ แƒ˜ แƒ แƒ˜แƒชแƒฎแƒ•แƒ˜. แƒ–แƒแƒ’แƒ˜แƒ”แƒ แƒ—แƒ˜ แƒžแƒ˜แƒ แƒแƒ•แƒœแƒ”แƒ‘แƒ˜แƒก แƒแƒ–แƒ แƒ˜แƒ—แƒแƒช. แƒฃแƒœแƒ“แƒ แƒ’แƒ•แƒแƒฎแƒกแƒแƒ•แƒ“แƒ”แƒก, แƒ แƒแƒ› แƒคแƒฃแƒšแƒ˜แƒก แƒขแƒ˜แƒžแƒ˜แƒก แƒฉแƒแƒ›แƒแƒ แƒ—แƒ›แƒ”แƒ•แƒ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒชแƒ˜แƒคแƒ แƒฃแƒš แƒขแƒ˜แƒžแƒ–แƒ”, แƒ˜แƒกแƒ”แƒ•แƒ” แƒ แƒแƒ’แƒแƒ แƒช แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ แƒ˜แƒชแƒฎแƒ•แƒ˜แƒ—แƒ˜ แƒขแƒ˜แƒžแƒ˜แƒก แƒ’แƒแƒ“แƒแƒชแƒ”แƒ›แƒ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒคแƒฃแƒšแƒ˜แƒก แƒขแƒ˜แƒžแƒ–แƒ”. แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒฎแƒšแƒ แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒ—แƒแƒ›แƒแƒจแƒแƒ— แƒ แƒแƒ’แƒแƒ แƒช แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ’แƒฃแƒšแƒ˜. แƒ›แƒแƒ’แƒ แƒแƒ› แƒ”แƒก แƒแƒ  แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒ˜แƒ’แƒ˜แƒ•แƒ” แƒคแƒฃแƒšแƒ˜.

แƒ›แƒชแƒ˜แƒ แƒ” แƒ“แƒ แƒ—แƒแƒœแƒ›แƒ˜แƒ›แƒ“แƒ”แƒ•แƒ แƒแƒ‘แƒ˜แƒ— แƒ—แƒแƒแƒ‘แƒ

SELECT *
  FROM generate_series(1::smallint, 5::smallint, 1::smallint)

ERROR:  function generate_series(smallint, smallint, smallint) is not unique
LINE 2:   FROM generate_series(1::smallint, 5::smallint, 1::smallint...
               ^
HINT:  Could not choose a best candidate function. You might need to add explicit type casts.
********** ะžัˆะธะฑะบะฐ **********
ERROR: function generate_series(smallint, smallint, smallint) is not unique
SQL-ัะพัั‚ะพัะฝะธะต: 42725
ะŸะพะดัะบะฐะทะบะฐ: Could not choose a best candidate function. You might need to add explicit type casts.
ะกะธะผะฒะพะป: 18

PostgreSQL-แƒก แƒแƒ  แƒฃแƒงแƒ•แƒแƒ แƒก แƒ“แƒ แƒแƒ˜แƒก แƒ“แƒแƒ™แƒแƒ แƒ’แƒ•แƒ แƒฌแƒ•แƒ แƒ˜แƒšแƒ›แƒแƒœแƒ”แƒ‘แƒ–แƒ”. แƒ แƒ แƒแƒ แƒ˜แƒก แƒ”แƒก แƒ—แƒแƒœแƒ›แƒ˜แƒ›แƒ“แƒ”แƒ•แƒ แƒแƒ‘แƒ”แƒ‘แƒ˜ แƒ“แƒแƒคแƒฃแƒซแƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒฌแƒ•แƒ แƒ˜แƒšแƒ›แƒแƒœแƒ”แƒ‘แƒ–แƒ”? int, แƒแƒ แƒแƒœแƒแƒ™แƒšแƒ”แƒ‘! แƒแƒ›แƒ˜แƒขแƒแƒ›, แƒ–แƒ”แƒ›แƒแƒแƒฆแƒœแƒ˜แƒจแƒœแƒฃแƒšแƒ˜ แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ˜แƒก แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ›แƒชแƒ“แƒ”แƒšแƒแƒ‘แƒ˜แƒกแƒแƒก, แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒ แƒชแƒ“แƒ˜แƒšแƒแƒ‘แƒก smallint-แƒ˜แƒก แƒ’แƒแƒ“แƒแƒขแƒแƒœแƒแƒก แƒกแƒฎแƒ•แƒ แƒ›แƒ—แƒ”แƒšแƒ˜ แƒ แƒ˜แƒชแƒฎแƒ•แƒ˜แƒก แƒขแƒ˜แƒžแƒ–แƒ” แƒ“แƒ แƒฎแƒ”แƒ“แƒแƒ•แƒก, แƒ แƒแƒ› แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ˜แƒงแƒแƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒแƒกแƒ”แƒ—แƒ˜ cast. แƒ แƒแƒ›แƒ”แƒšแƒ˜ แƒ›แƒกแƒแƒฎแƒ˜แƒแƒ‘แƒ˜ แƒแƒ˜แƒ แƒฉแƒ˜แƒแƒก? แƒ›แƒแƒก แƒแƒ  แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒ แƒ“แƒ, แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒแƒ“, แƒจแƒ”แƒชแƒ“แƒแƒ›แƒ˜แƒ— แƒ˜แƒจแƒšแƒ”แƒ‘แƒ.

แƒคแƒแƒ˜แƒšแƒ˜ แƒœแƒแƒ›แƒ”แƒ แƒ˜ แƒแƒ แƒ˜. "char"/char/varchar/แƒขแƒ”แƒฅแƒกแƒขแƒ˜

แƒ แƒ˜แƒ’แƒ˜ แƒฃแƒชแƒœแƒแƒฃแƒ แƒแƒ‘แƒ”แƒ‘แƒ˜ แƒแƒกแƒ”แƒ•แƒ” แƒ’แƒ•แƒฎแƒ•แƒ“แƒ”แƒ‘แƒ แƒžแƒ”แƒ แƒกแƒแƒœแƒแƒŸแƒ”แƒ‘แƒ˜แƒก แƒขแƒ˜แƒžแƒ”แƒ‘แƒจแƒ˜. แƒ›แƒแƒ“แƒ˜แƒ— แƒ’แƒแƒ•แƒ”แƒชแƒœแƒแƒ— แƒ›แƒแƒ—แƒแƒช.

แƒ แƒ แƒกแƒแƒฎแƒ˜แƒก แƒฎแƒ แƒ˜แƒ™แƒ”แƒ‘แƒ˜แƒ แƒ”แƒก?

SELECT 'ะŸะ•ะขะฏ'::"char"
     , 'ะŸะ•ะขะฏ'::"char"::bytea
     , 'ะŸะ•ะขะฏ'::char
     , 'ะŸะ•ะขะฏ'::char::bytea

 char  | bytea |    bpchar    | bytea
"char" | bytea | character(1) | bytea
-------+-------+--------------+--------
 โ•จ     | xd0  | ะŸ            | xd09f

แƒ”แƒก แƒ แƒ แƒขแƒ˜แƒžแƒ˜แƒก "แƒจแƒแƒ แƒ˜แƒ", แƒ แƒ แƒ™แƒšแƒแƒฃแƒœแƒ˜แƒ แƒ”แƒก? แƒฉแƒ•แƒ”แƒœ แƒแƒ  แƒ’แƒ•แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒ”แƒก... แƒ˜แƒ›แƒ˜แƒขแƒแƒ›, แƒ แƒแƒ› แƒ˜แƒก แƒ—แƒแƒ•แƒก แƒ˜แƒฉแƒ”แƒœแƒก แƒ แƒแƒ’แƒแƒ แƒช แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒฅแƒแƒ แƒฎแƒแƒœแƒ, แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ แƒแƒ› แƒ‘แƒ แƒญแƒงแƒแƒšแƒ”แƒ‘แƒจแƒ˜แƒ. แƒ“แƒ แƒ˜แƒก แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ“แƒ”แƒ‘แƒ แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ•แƒ˜ char-แƒ˜แƒกแƒ’แƒแƒœ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ‘แƒ แƒญแƒงแƒแƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”แƒ, แƒ˜แƒ›แƒ˜แƒ—, แƒ แƒแƒ› แƒ’แƒแƒ›แƒแƒแƒฅแƒ•แƒก แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒ˜แƒก แƒฌแƒแƒ แƒ›แƒแƒ“แƒ’แƒ”แƒœแƒ˜แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒ‘แƒแƒ˜แƒขแƒ˜, แƒฎแƒแƒšแƒ แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ•แƒ˜ char แƒ’แƒแƒ›แƒแƒแƒฅแƒ•แƒก แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒกแƒ˜แƒ›แƒ‘แƒแƒšแƒ. แƒฉแƒ•แƒ”แƒœแƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒกแƒ˜แƒ›แƒ‘แƒแƒšแƒแƒ แƒแƒกแƒ P, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒฃแƒœแƒ˜แƒ™แƒแƒ“แƒ˜แƒก แƒฌแƒแƒ แƒ›แƒแƒ“แƒ’แƒ”แƒœแƒแƒจแƒ˜ แƒ˜แƒ™แƒแƒ•แƒ”แƒ‘แƒก 2 แƒ‘แƒแƒ˜แƒขแƒก, แƒ แƒแƒช แƒ“แƒแƒกแƒขแƒฃแƒ แƒ“แƒ”แƒ‘แƒ แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜แƒก แƒ‘แƒแƒ˜แƒขแƒ˜แƒก แƒขแƒ˜แƒžแƒแƒ“ แƒ’แƒแƒ“แƒแƒฅแƒชแƒ”แƒ•แƒ˜แƒ—. แƒ“แƒ "char" แƒขแƒ˜แƒžแƒ˜ แƒ˜แƒฆแƒ”แƒ‘แƒก แƒแƒ› แƒฃแƒœแƒ˜แƒ™แƒแƒ“แƒ˜แƒก แƒฌแƒแƒ แƒ›แƒแƒ“แƒ’แƒ”แƒœแƒ˜แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒžแƒ˜แƒ แƒ•แƒ”แƒš แƒ‘แƒแƒ˜แƒขแƒก. แƒ›แƒแƒจแƒ˜แƒœ แƒ แƒแƒขแƒแƒ› แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒ”แƒก แƒขแƒ˜แƒžแƒ˜? PostgreSQL แƒ“แƒแƒ™แƒฃแƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒแƒจแƒ˜ แƒœแƒแƒ—แƒฅแƒ•แƒแƒ›แƒ˜แƒ, แƒ แƒแƒ› แƒ”แƒก แƒแƒ แƒ˜แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒแƒšแƒฃแƒ แƒ˜ แƒขแƒ˜แƒžแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒกแƒžแƒ”แƒชแƒ˜แƒแƒšแƒฃแƒ แƒ˜ แƒกแƒแƒญแƒ˜แƒ แƒแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒแƒ›แƒ˜แƒขแƒแƒ› แƒœแƒแƒ™แƒšแƒ”แƒ‘แƒแƒ“ แƒกแƒแƒ•แƒแƒ แƒแƒฃแƒ“แƒแƒ, แƒ แƒแƒ› แƒ“แƒแƒ’แƒ•แƒญแƒ˜แƒ แƒ“แƒ”แƒก. แƒ›แƒแƒ’แƒ แƒแƒ› แƒจแƒ”แƒฎแƒ”แƒ“แƒ” แƒ—แƒ•แƒแƒšแƒ”แƒ‘แƒจแƒ˜ แƒ“แƒ แƒแƒ  แƒชแƒ“แƒ”แƒ‘แƒ˜, แƒ แƒแƒชแƒ แƒ’แƒแƒœแƒกแƒแƒ™แƒฃแƒ—แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒแƒฅแƒชแƒ˜แƒ”แƒšแƒ˜แƒ— แƒจแƒ”แƒฎแƒ•แƒ“แƒ”แƒ‘แƒ˜.

แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒคแƒแƒ แƒ—แƒ”แƒ‘แƒ˜. แƒ›แƒฎแƒ”แƒ“แƒ•แƒ”แƒšแƒแƒ‘แƒ˜แƒ“แƒแƒœ, แƒ’แƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”

SELECT 'abc   '::char(6)::bytea
     , 'abc   '::char(6)::varchar(6)::bytea
     , 'abc   '::varchar(6)::bytea

     bytea     |   bytea  |     bytea
     bytea     |   bytea  |     bytea
---------------+----------+----------------
x616263202020 | x616263 | x616263202020

แƒจแƒ”แƒฎแƒ”แƒ“แƒ”แƒ— แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒš แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒก. แƒ›แƒ” แƒกแƒžแƒ”แƒชแƒ˜แƒแƒšแƒฃแƒ แƒแƒ“ แƒ’แƒแƒ“แƒแƒ•แƒแƒฅแƒชแƒ˜แƒ” แƒงแƒ•แƒ”แƒšแƒ แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜ แƒ‘แƒแƒ˜แƒขแƒ˜แƒก แƒขแƒ˜แƒžแƒ–แƒ”, แƒ˜แƒกแƒ”, แƒ แƒแƒ› แƒœแƒแƒ—แƒšแƒแƒ“ แƒฉแƒแƒœแƒ“แƒ, แƒ แƒแƒช แƒ˜แƒงแƒ. แƒกแƒแƒ“ แƒแƒ แƒ˜แƒก แƒ›แƒ˜แƒ›แƒแƒ•แƒแƒšแƒ˜ แƒแƒ“แƒ’แƒ˜แƒšแƒ”แƒ‘แƒ˜ แƒ•แƒแƒ แƒฉแƒแƒ (6) แƒฉแƒแƒ›แƒแƒกแƒฎแƒ›แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’? แƒ“แƒแƒ™แƒฃแƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒแƒจแƒ˜ แƒšแƒแƒ™แƒแƒœแƒฃแƒ แƒแƒ“ แƒœแƒแƒ—แƒฅแƒ•แƒแƒ›แƒ˜แƒ: โ€žแƒ’แƒ›แƒ˜แƒ แƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ˜แƒก แƒกแƒฎแƒ•แƒ แƒขแƒ˜แƒžแƒ–แƒ” แƒ’แƒแƒ“แƒแƒชแƒ”แƒ›แƒ˜แƒกแƒแƒก, แƒฃแƒ™แƒแƒœแƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ” แƒฃแƒ’แƒฃแƒšแƒ•แƒ”แƒ‘แƒ”แƒšแƒงแƒแƒคแƒ˜แƒšแƒ˜แƒโ€œ. แƒ”แƒก แƒ–แƒ˜แƒ–แƒฆแƒ˜ แƒฃแƒœแƒ“แƒ แƒแƒฎแƒกแƒแƒ•แƒ“แƒ”แƒก. แƒ“แƒ แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ—, แƒ แƒแƒ› แƒ—แƒฃ แƒชแƒ˜แƒขแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒ˜แƒก แƒ›แƒฃแƒ“แƒ›แƒ˜แƒ•แƒ˜ แƒ’แƒแƒ“แƒแƒขแƒแƒœแƒ˜แƒšแƒ˜แƒ แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ  แƒขแƒ˜แƒžแƒ–แƒ” varchar(6), แƒฃแƒ™แƒแƒœแƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ”แƒ”แƒ‘แƒ˜ แƒจแƒ”แƒœแƒแƒ แƒฉแƒฃแƒœแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ. แƒแƒกแƒ”แƒ—แƒ˜แƒ แƒกแƒแƒกแƒฌแƒแƒฃแƒšแƒ”แƒ‘แƒ˜.

แƒคแƒแƒ˜แƒšแƒ˜ แƒœแƒแƒ›แƒ”แƒ แƒ˜ แƒกแƒแƒ›แƒ˜. json/jsonb

JSON แƒแƒ แƒ˜แƒก แƒชแƒแƒšแƒ™แƒ” แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒชแƒฎแƒแƒ•แƒ แƒแƒ‘แƒก แƒกแƒแƒ™แƒฃแƒ—แƒแƒ แƒ˜ แƒชแƒฎแƒแƒ•แƒ แƒ”แƒ‘แƒ˜แƒ—. แƒแƒ›แƒ˜แƒขแƒแƒ›, แƒ›แƒ˜แƒกแƒ˜ แƒ“แƒ PostgreSQL-แƒ˜แƒก แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒ”แƒ‘แƒ˜ แƒแƒ“แƒœแƒแƒ• แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ. แƒแƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜.

แƒฏแƒแƒœแƒกแƒแƒœแƒ˜ แƒ“แƒ แƒฏแƒแƒœแƒกแƒแƒœแƒ˜. แƒ˜แƒ’แƒ แƒซแƒ”แƒœแƒ˜ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒ

SELECT 'null'::jsonb IS NULL

?column?
boolean
---------
f

แƒกแƒแƒฅแƒ›แƒ” แƒ˜แƒ›แƒแƒจแƒ˜แƒ, แƒ แƒแƒ› JSON-แƒก แƒแƒฅแƒ•แƒก แƒกแƒแƒ™แƒฃแƒ—แƒแƒ แƒ˜ null แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ  แƒแƒ แƒ˜แƒก NULL-แƒ˜แƒก แƒแƒœแƒแƒšแƒแƒ’แƒ˜ PostgreSQL-แƒจแƒ˜. แƒแƒ›แƒแƒ•แƒ“แƒ แƒแƒฃแƒšแƒแƒ“, แƒ—แƒแƒ•แƒแƒ“ JSON แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒก แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒฐแƒฅแƒแƒœแƒ“แƒ”แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ NULL, แƒแƒ›แƒ˜แƒขแƒแƒ› แƒ’แƒแƒ›แƒแƒ—แƒฅแƒ›แƒ SELECT null::jsonb IS NULL (แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ— แƒ”แƒ แƒ—แƒ˜ แƒ‘แƒ แƒญแƒงแƒแƒšแƒ”แƒ‘แƒ˜แƒก แƒแƒ แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒ) แƒแƒ›แƒฏแƒ”แƒ แƒแƒ“ แƒ“แƒแƒ‘แƒ แƒฃแƒœแƒ“แƒ”แƒ‘แƒ true.

แƒ”แƒ แƒ—แƒ˜ แƒแƒกแƒ แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒก แƒชแƒ•แƒšแƒ˜แƒก

SELECT '{"1": [1, 2, 3], "2": [4, 5, 6], "1": [7, 8, 9]}'::json

                     json
                     json
------------------------------------------------
{"1": [1, 2, 3], "2": [4, 5, 6], "1": [7, 8, 9]}

---

SELECT '{"1": [1, 2, 3], "2": [4, 5, 6], "1": [7, 8, 9]}'::jsonb

             jsonb
             jsonb
--------------------------------
{"1": [7, 8, 9], "2": [4, 5, 6]}

แƒกแƒแƒฅแƒ›แƒ” แƒ˜แƒ›แƒแƒจแƒ˜แƒ, แƒ แƒแƒ› json แƒ“แƒ jsonb แƒกแƒ แƒฃแƒšแƒ˜แƒแƒ“ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ”แƒ‘แƒ˜แƒ. json-แƒจแƒ˜ แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ˜ แƒ˜แƒœแƒแƒฎแƒ”แƒ‘แƒ แƒ แƒแƒ’แƒแƒ แƒช แƒแƒ แƒ˜แƒก, แƒฎแƒแƒšแƒ jsonb-แƒจแƒ˜ แƒ˜แƒก แƒฃแƒ™แƒ•แƒ” แƒ˜แƒœแƒแƒฎแƒ”แƒ‘แƒ แƒ’แƒแƒแƒœแƒแƒšแƒ˜แƒ–แƒ”แƒ‘แƒฃแƒšแƒ˜, แƒ˜แƒœแƒ“แƒ”แƒฅแƒกแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ˜แƒก แƒกแƒแƒฎแƒ˜แƒ—. แƒกแƒฌแƒแƒ แƒ”แƒ“ แƒแƒ›แƒ˜แƒขแƒแƒ›, แƒ›แƒ”แƒแƒ แƒ” แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒ™แƒšแƒแƒ•แƒ˜แƒจแƒ˜แƒ— 1 แƒจแƒ”แƒ˜แƒชแƒ•แƒแƒšแƒ [1, 2, 3]-แƒ“แƒแƒœ [7, 8, 9]-แƒ›แƒ“แƒ”, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ˜แƒก แƒ‘แƒแƒšแƒแƒก แƒจแƒ”แƒ•แƒ˜แƒ“แƒ แƒ˜แƒ›แƒแƒ•แƒ” แƒ’แƒแƒกแƒแƒฆแƒ”แƒ‘แƒ˜แƒ—.

แƒแƒ  แƒ“แƒแƒšแƒ˜แƒแƒ— แƒฌแƒงแƒแƒšแƒ˜ แƒกแƒแƒฎแƒ˜แƒ“แƒแƒœ

SELECT '{"reading": 1.230e-5}'::jsonb
     , '{"reading": 1.230e-5}'::json

          jsonb         |         json
          jsonb         |         json
------------------------+----------------------
{"reading": 0.00001230} | {"reading": 1.230e-5}

PostgreSQL แƒ—แƒแƒ•แƒ˜แƒก JSONB แƒ˜แƒ›แƒžแƒšแƒ”แƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒแƒจแƒ˜ แƒชแƒ•แƒšแƒ˜แƒก แƒ แƒ”แƒแƒšแƒฃแƒ แƒ˜ แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒ‘แƒ˜แƒก แƒคแƒแƒ แƒ›แƒแƒขแƒ˜แƒ แƒ”แƒ‘แƒแƒก, แƒ›แƒ˜แƒฐแƒงแƒแƒ•แƒก แƒ›แƒแƒ— แƒ™แƒšแƒแƒกแƒ˜แƒ™แƒฃแƒ  แƒคแƒแƒ แƒ›แƒแƒ›แƒ“แƒ”. แƒ”แƒก แƒแƒ  แƒฎแƒ“แƒ”แƒ‘แƒ JSON แƒขแƒ˜แƒžแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒชแƒแƒขแƒ แƒฃแƒชแƒœแƒแƒฃแƒ แƒ˜แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ›แƒแƒ แƒ—แƒแƒšแƒ˜แƒ.

แƒคแƒแƒ˜แƒšแƒ˜ แƒœแƒแƒ›แƒ”แƒ แƒ˜ แƒแƒ—แƒฎแƒ˜. แƒ—แƒแƒ แƒ˜แƒฆแƒ˜/แƒ“แƒ แƒ/แƒ“แƒ แƒแƒ˜แƒก แƒจแƒขแƒแƒ›แƒžแƒ˜

แƒแƒกแƒ”แƒ•แƒ” แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒฃแƒชแƒœแƒแƒฃแƒ แƒแƒ‘แƒ”แƒ‘แƒ˜ แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก/แƒ“แƒ แƒแƒ˜แƒก แƒขแƒ˜แƒžแƒ”แƒ‘แƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒ—. แƒ›แƒแƒ“แƒ˜แƒ— แƒจแƒ”แƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒ›แƒแƒ—. แƒœแƒ”แƒ‘แƒ แƒ›แƒแƒ›แƒ”แƒชแƒ˜แƒ— แƒ“แƒแƒฃแƒงแƒแƒ•แƒœแƒ”แƒ‘แƒšแƒ˜แƒ• แƒ’แƒแƒ•แƒแƒ™แƒ”แƒ—แƒ แƒ“แƒแƒ—แƒฅแƒ›แƒ, แƒ แƒแƒ› แƒ–แƒแƒ’แƒ˜แƒ”แƒ แƒ—แƒ˜ แƒฅแƒชแƒ”แƒ•แƒ˜แƒ—แƒ˜ แƒ›แƒแƒฎแƒแƒกแƒ˜แƒแƒ—แƒ”แƒ‘แƒ”แƒšแƒ˜ แƒœแƒแƒ—แƒ”แƒšแƒ˜ แƒ’แƒแƒฎแƒ“แƒ”แƒ‘แƒ, แƒ—แƒฃ แƒ™แƒแƒ แƒ’แƒแƒ“ แƒ’แƒ”แƒกแƒ›แƒ˜แƒ— แƒ“แƒ แƒแƒ˜แƒก แƒ–แƒแƒœแƒ”แƒ‘แƒ—แƒแƒœ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒก แƒแƒ แƒกแƒ˜. แƒ›แƒแƒ’แƒ แƒแƒ› แƒ”แƒก แƒแƒกแƒ”แƒ•แƒ” แƒชแƒแƒšแƒ™แƒ” แƒกแƒขแƒแƒขแƒ˜แƒ˜แƒก แƒ—แƒ”แƒ›แƒแƒ.

แƒฉแƒ”แƒ›แƒ˜ แƒจแƒ”แƒœแƒ˜ แƒแƒ  แƒ”แƒกแƒ›แƒ˜แƒก

SELECT '08-Jan-99'::date

ERROR:  date/time field value out of range: "08-Jan-99"
LINE 1: SELECT '08-Jan-99'::date
               ^
HINT:  Perhaps you need a different "datestyle" setting.
********** ะžัˆะธะฑะบะฐ **********
ERROR: date/time field value out of range: "08-Jan-99"
SQL-ัะพัั‚ะพัะฝะธะต: 22008
ะŸะพะดัะบะฐะทะบะฐ: Perhaps you need a different "datestyle" setting.
ะกะธะผะฒะพะป: 8

แƒ แƒแƒ’แƒแƒ แƒช แƒฉแƒแƒœแƒก, แƒ แƒ แƒแƒ แƒ˜แƒก แƒแƒฅ แƒ’แƒแƒฃแƒ’แƒ”แƒ‘แƒแƒ แƒ˜? แƒ›แƒแƒ’แƒ แƒแƒ› แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒแƒก แƒฏแƒ”แƒ  แƒ™แƒ˜แƒ“แƒ”แƒ• แƒแƒ  แƒ”แƒกแƒ›แƒ˜แƒก, แƒ แƒ แƒ“แƒแƒ•แƒแƒงแƒ”แƒœแƒ”แƒ— แƒแƒฅ แƒžแƒ˜แƒ แƒ•แƒ”แƒš แƒแƒ“แƒ’แƒ˜แƒšแƒ–แƒ” - แƒฌแƒ”แƒšแƒ˜ แƒ—แƒฃ แƒ“แƒฆแƒ”? แƒ“แƒ แƒ˜แƒก แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒก, แƒ แƒแƒ› แƒ”แƒก 99 แƒฌแƒšแƒ˜แƒก 2008 แƒ˜แƒแƒœแƒ•แƒแƒ แƒ˜แƒ, แƒ แƒแƒช แƒ›แƒ˜แƒก แƒ’แƒแƒœแƒ”แƒ‘แƒแƒก แƒแƒ‘แƒ แƒ™แƒแƒšแƒ”แƒ‘แƒก. แƒ–แƒแƒ’แƒแƒ“แƒแƒ“ แƒ แƒแƒ› แƒ•แƒ—แƒฅแƒ•แƒแƒ—, แƒ—แƒแƒ แƒ˜แƒฆแƒ”แƒ‘แƒ˜แƒก แƒขแƒ”แƒฅแƒกแƒขแƒ˜แƒก แƒคแƒแƒ แƒ›แƒแƒขแƒจแƒ˜ แƒ’แƒแƒ“แƒแƒชแƒ”แƒ›แƒ˜แƒกแƒแƒก แƒกแƒแƒญแƒ˜แƒ แƒแƒ แƒซแƒแƒšแƒ˜แƒแƒœ แƒคแƒ แƒ—แƒฎแƒ˜แƒšแƒแƒ“ แƒจแƒ”แƒแƒ›แƒแƒฌแƒ›แƒแƒ— แƒ แƒแƒ›แƒ“แƒ”แƒœแƒแƒ“ แƒกแƒฌแƒแƒ แƒแƒ“ แƒแƒ›แƒแƒ˜แƒชแƒœแƒ แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒแƒ› (แƒ™แƒ”แƒ แƒซแƒแƒ“, แƒ’แƒแƒแƒœแƒแƒšแƒ˜แƒ–แƒ”แƒ— datestyle แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜ SHOW datestyle แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒ—), แƒ แƒแƒ“แƒ’แƒแƒœ แƒแƒ› แƒกแƒแƒ™แƒ˜แƒ—แƒฎแƒจแƒ˜ แƒ’แƒแƒฃแƒ แƒ™แƒ•แƒ”แƒ•แƒšแƒแƒ‘แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒซแƒแƒšแƒ˜แƒแƒœ แƒซแƒ•แƒ˜แƒ แƒ˜ แƒ˜แƒงแƒแƒก.

แƒกแƒแƒ˜แƒ“แƒแƒœ แƒ›แƒแƒ˜แƒขแƒแƒœแƒ” แƒ”แƒก?

SELECT '04:05 Europe/Moscow'::time

ERROR:  invalid input syntax for type time: "04:05 Europe/Moscow"
LINE 1: SELECT '04:05 Europe/Moscow'::time
               ^
********** ะžัˆะธะฑะบะฐ **********
ERROR: invalid input syntax for type time: "04:05 Europe/Moscow"
SQL-ัะพัั‚ะพัะฝะธะต: 22007
ะกะธะผะฒะพะป: 8

แƒ แƒแƒขแƒแƒ› แƒ•แƒ”แƒ  แƒฎแƒ•แƒ“แƒ”แƒ‘แƒ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒ แƒชแƒแƒšแƒกแƒแƒฎแƒแƒ“ แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒฃแƒš แƒ“แƒ แƒแƒก? แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒ, แƒ แƒแƒ› แƒ“แƒ แƒแƒ˜แƒก แƒกแƒแƒ แƒขแƒงแƒ”แƒšแƒก แƒแƒ  แƒแƒฅแƒ•แƒก แƒแƒ‘แƒ แƒ”แƒ•แƒ˜แƒแƒขแƒฃแƒ แƒ, แƒแƒ แƒแƒ›แƒ”แƒ“ แƒกแƒ แƒฃแƒšแƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ˜, แƒ แƒแƒช แƒแƒ–แƒ แƒ˜ แƒแƒฅแƒ•แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒจแƒ˜, แƒ แƒแƒ“แƒ’แƒแƒœ แƒ˜แƒก แƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ‘แƒก แƒ“แƒ แƒแƒ˜แƒก แƒกแƒแƒ แƒขแƒงแƒšแƒ˜แƒก แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒ˜แƒกแƒขแƒแƒ แƒ˜แƒแƒก แƒ“แƒ แƒ˜แƒก แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”. แƒ“แƒ แƒ—แƒแƒ•แƒแƒ“ แƒ“แƒ แƒแƒ˜แƒก แƒฎแƒแƒ–แƒ˜แƒก แƒคแƒแƒ แƒ›แƒฃแƒšแƒ˜แƒ แƒ”แƒ‘แƒ แƒ‘แƒแƒ“แƒ”แƒ‘แƒก แƒ™แƒ˜แƒ—แƒฎแƒ•แƒ”แƒ‘แƒก - แƒ แƒแƒก แƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒแƒ‘แƒ“แƒ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒกแƒขแƒ˜ แƒกแƒ˜แƒœแƒแƒ›แƒ“แƒ•แƒ˜แƒšแƒ”แƒจแƒ˜? แƒแƒฅแƒ”แƒ“แƒแƒœ แƒ’แƒแƒ›แƒแƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ”, แƒแƒฅ แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒšแƒแƒ’แƒ˜แƒ™แƒฃแƒ แƒ˜แƒ, แƒ—แƒฃ แƒแƒ›แƒแƒก แƒจแƒ”แƒฎแƒ”แƒ“แƒแƒ•แƒ—.

แฒ แƒ แƒกแƒญแƒ˜แƒ แƒก แƒ›แƒแƒก?

แƒฌแƒแƒ แƒ›แƒแƒ˜แƒ“แƒ’แƒ˜แƒœแƒ”แƒ— แƒกแƒ˜แƒขแƒฃแƒแƒชแƒ˜แƒ. แƒ—แƒฅแƒ•แƒ”แƒœ แƒ’แƒแƒฅแƒ•แƒ— แƒ•แƒ”แƒšแƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒชแƒฎแƒ แƒ˜แƒšแƒจแƒ˜ แƒขแƒ˜แƒžแƒ˜แƒก timestamptz. แƒ’แƒกแƒฃแƒ แƒ— แƒ›แƒ˜แƒกแƒ˜ แƒ˜แƒœแƒ“แƒ”แƒฅแƒกแƒ˜แƒ แƒ”แƒ‘แƒ. แƒ›แƒแƒ’แƒ แƒแƒ› แƒ’แƒ”แƒกแƒ›แƒ˜แƒ—, แƒ แƒแƒ› แƒแƒ› แƒ•แƒ”แƒšแƒ–แƒ” แƒ˜แƒœแƒ“แƒ”แƒฅแƒกแƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ แƒงแƒแƒ•แƒ”แƒšแƒ—แƒ•แƒ˜แƒก แƒแƒ  แƒแƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒ แƒ—แƒšแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒ˜แƒกแƒ˜ แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒจแƒ”แƒ แƒฉแƒ”แƒ•แƒ˜แƒ—แƒแƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒ (แƒแƒ› แƒขแƒ˜แƒžแƒ˜แƒก แƒ—แƒ˜แƒ—แƒฅแƒ›แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒฃแƒœแƒ˜แƒ™แƒแƒšแƒฃแƒ แƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ). แƒแƒกแƒ” แƒ แƒแƒ›, แƒ—แƒฅแƒ•แƒ”แƒœ แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ˜แƒขแƒ”แƒ— แƒจแƒ”แƒแƒ›แƒชแƒ˜แƒ แƒแƒ— แƒ˜แƒœแƒ“แƒ”แƒฅแƒกแƒ˜แƒก แƒกแƒ”แƒšแƒ”แƒฅแƒชแƒ˜แƒฃแƒ แƒแƒ‘แƒ แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒแƒ›แƒ“แƒ” แƒฉแƒแƒ›แƒแƒกแƒฎแƒ›แƒ˜แƒ—. แƒ“แƒ แƒ—แƒฅแƒ•แƒ”แƒœ แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ‘แƒ— แƒกแƒ˜แƒฃแƒ แƒžแƒ แƒ˜แƒ–แƒก:

CREATE INDEX "iIdent-DateLastUpdate"
  ON public."Ident" USING btree
  (("DTLastUpdate"::date));

ERROR:  functions in index expression must be marked IMMUTABLE
********** ะžัˆะธะฑะบะฐ **********
ERROR: functions in index expression must be marked IMMUTABLE
SQL-ัะพัั‚ะพัะฝะธะต: 42P17

แฒ แƒ แƒ›แƒแƒฎแƒ“แƒ? แƒคแƒแƒฅแƒขแƒ˜แƒ, แƒ แƒแƒ› timestamptz แƒขแƒ˜แƒžแƒ˜แƒก แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก แƒขแƒ˜แƒžแƒ–แƒ” แƒ’แƒแƒ“แƒแƒกแƒแƒขแƒแƒœแƒแƒ“ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ TimeZone แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ, แƒ แƒแƒช แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒœแƒ•แƒ”แƒ แƒขแƒแƒชแƒ˜แƒ˜แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒก แƒ“แƒแƒ›แƒแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒฃแƒšแƒก แƒฎแƒ“แƒ˜แƒก แƒ›แƒแƒ แƒ’แƒ”แƒ‘แƒฃแƒš แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ–แƒ”, แƒ”.แƒ˜. แƒแƒ แƒแƒกแƒขแƒแƒ‘แƒ˜แƒšแƒฃแƒ แƒ˜. แƒแƒกแƒ”แƒ—แƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜ แƒ“แƒแƒฃแƒจแƒ•แƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒ˜แƒœแƒ“แƒ”แƒฅแƒกแƒจแƒ˜. แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒ—แƒฅแƒ•แƒ”แƒœ แƒ›แƒ™แƒแƒคแƒ˜แƒแƒ“ แƒฃแƒœแƒ“แƒ แƒ›แƒ˜แƒฃแƒ—แƒ˜แƒ—แƒแƒ—, แƒ—แƒฃ แƒ แƒแƒ›แƒ”แƒš แƒ“แƒ แƒแƒ˜แƒก แƒ–แƒแƒœแƒแƒจแƒ˜ แƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ“แƒ”แƒ‘แƒ แƒ’แƒแƒ“แƒแƒชแƒ”แƒ›แƒ˜แƒก แƒขแƒ˜แƒžแƒ˜.

แƒ แƒแƒชแƒ แƒแƒฎแƒšแƒ แƒกแƒแƒ”แƒ แƒ—แƒแƒ“ แƒแƒ  แƒแƒ แƒ˜แƒก

แƒฉแƒ•แƒ”แƒœ แƒ›แƒ˜แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ˜ แƒ•แƒแƒ แƒ— now() แƒ“แƒ แƒแƒ˜แƒก แƒ–แƒแƒœแƒ˜แƒก แƒ’แƒแƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ‘แƒ˜แƒ— แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒ—แƒแƒ แƒ˜แƒฆแƒ˜แƒก/แƒ“แƒ แƒแƒ˜แƒก แƒ“แƒแƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒแƒก. แƒ›แƒแƒ’แƒ แƒแƒ› แƒจแƒ”แƒฎแƒ”แƒ“แƒ”แƒ— แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ™แƒ˜แƒ—แƒฎแƒ•แƒ”แƒ‘แƒก:

START TRANSACTION;
SELECT now();

            now
  timestamp with time zone
-----------------------------
2019-11-26 13:13:04.271419+03

...

SELECT now();

            now
  timestamp with time zone
-----------------------------
2019-11-26 13:13:04.271419+03

...

SELECT now();

            now
  timestamp with time zone
-----------------------------
2019-11-26 13:13:04.271419+03

COMMIT;

แƒ—แƒแƒ แƒ˜แƒฆแƒ˜/แƒ“แƒ แƒ แƒ‘แƒ แƒฃแƒœแƒ“แƒ”แƒ‘แƒ แƒ˜แƒ’แƒ˜แƒ•แƒ”, แƒ แƒแƒช แƒแƒ  แƒฃแƒœแƒ“แƒ แƒ’แƒแƒกแƒฃแƒšแƒ˜ แƒ˜แƒงแƒแƒก แƒฌแƒ˜แƒœแƒ แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ˜แƒ“แƒแƒœ! แฒ แƒ แƒ›แƒแƒฎแƒ“แƒ? แƒคแƒแƒฅแƒขแƒ˜แƒ, แƒ แƒแƒ› now() แƒแƒ แƒ˜แƒก แƒแƒ แƒ แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒ“แƒ แƒ, แƒแƒ แƒแƒ›แƒ”แƒ“ แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒขแƒ แƒแƒœแƒ–แƒแƒฅแƒชแƒ˜แƒ˜แƒก แƒ“แƒแƒฌแƒงแƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒ. แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒแƒ“, แƒ˜แƒก แƒแƒ  แƒ˜แƒชแƒ•แƒšแƒ”แƒ‘แƒ แƒขแƒ แƒแƒœแƒ–แƒแƒฅแƒชแƒ˜แƒ˜แƒก แƒคแƒแƒ แƒ’แƒšแƒ”แƒ‘แƒจแƒ˜. แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒขแƒ แƒแƒœแƒ–แƒแƒฅแƒชแƒ˜แƒ˜แƒก แƒคแƒแƒ แƒ’แƒšแƒ”แƒ‘แƒก แƒ’แƒแƒ แƒ”แƒ—, แƒ˜แƒ‘แƒ”แƒญแƒ“แƒ”แƒ‘แƒ แƒขแƒ แƒแƒœแƒ–แƒแƒฅแƒชแƒ˜แƒแƒจแƒ˜, แƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒช แƒฉแƒ•แƒ”แƒœ แƒ•แƒ”แƒ  แƒ•แƒแƒ›แƒฉแƒœแƒ”แƒ•แƒ—, แƒ แƒแƒ› แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ SELECT now(); แƒคแƒแƒฅแƒขแƒแƒ‘แƒ แƒ˜แƒ•แƒแƒ“, แƒแƒ แƒ แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ”... แƒ—แƒฃ แƒ’แƒกแƒฃแƒ แƒ— แƒ›แƒ˜แƒ˜แƒฆแƒแƒ— แƒžแƒแƒขแƒ˜แƒแƒกแƒแƒœแƒ˜ แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒ“แƒ แƒ, แƒฃแƒœแƒ“แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— clock_timestamp() แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ.

แƒคแƒแƒ˜แƒšแƒ˜ แƒœแƒแƒ›แƒ”แƒ แƒ˜ แƒฎแƒฃแƒ—แƒ˜. แƒชแƒแƒขแƒ

แƒชแƒแƒขแƒ แƒฃแƒชแƒœแƒแƒฃแƒ แƒ˜แƒ

SELECT '111'::bit(4)

 bit
bit(4)
------
1110

แƒ แƒแƒ›แƒ”แƒš แƒ›แƒฎแƒแƒ แƒ”แƒก แƒฃแƒœแƒ“แƒ แƒ“แƒแƒ”แƒ›แƒแƒขแƒแƒก แƒ‘แƒ˜แƒขแƒ”แƒ‘แƒ˜ แƒขแƒ˜แƒžแƒ˜แƒก แƒ’แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜? แƒ แƒแƒ’แƒแƒ แƒช แƒฉแƒแƒœแƒก, แƒ›แƒแƒ แƒชแƒฎแƒœแƒ˜แƒ•. แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ› แƒกแƒแƒ™แƒ˜แƒ—แƒฎแƒ–แƒ” แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒแƒ–แƒ แƒ˜ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ‘แƒแƒ–แƒแƒก แƒแƒฅแƒ•แƒก. แƒคแƒ แƒ—แƒฎแƒ˜แƒšแƒแƒ“ แƒ˜แƒงแƒแƒ•แƒ˜แƒ—: แƒ—แƒฃ แƒชแƒ˜แƒคแƒ แƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ แƒแƒ  แƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜แƒก แƒฉแƒแƒ›แƒแƒกแƒฎแƒ›แƒ˜แƒกแƒแƒก, แƒ•แƒ”แƒ  แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ‘แƒ— แƒ˜แƒ›แƒแƒก, แƒ แƒแƒช แƒ’แƒ˜แƒœแƒ“แƒแƒ“แƒแƒ—. แƒ”แƒก แƒ”แƒฎแƒ”แƒ‘แƒ แƒ แƒแƒ’แƒแƒ แƒช แƒ›แƒแƒ แƒชแƒฎแƒœแƒ˜แƒ• แƒ‘แƒ˜แƒขแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒแƒก, แƒแƒกแƒ”แƒ•แƒ” แƒ‘แƒ˜แƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒแƒก. แƒแƒกแƒ”แƒ•แƒ” แƒ›แƒแƒ แƒฏแƒ•แƒœแƒ˜แƒ•...

แƒคแƒแƒ˜แƒšแƒ˜ แƒœแƒแƒ›แƒ”แƒ แƒ˜ แƒ”แƒฅแƒ•แƒกแƒ˜. แƒ›แƒแƒกแƒ˜แƒ•แƒ”แƒ‘แƒ˜

NULL-แƒ›แƒแƒช แƒ™แƒ˜ แƒแƒ  แƒ’แƒแƒ˜แƒกแƒ แƒแƒšแƒ

SELECT ARRAY[1, 2] || NULL

?column?
integer[]
---------
{1,2}

แƒ แƒแƒ’แƒแƒ แƒช SQL-แƒ–แƒ” แƒแƒฆแƒ–แƒ แƒ“แƒ˜แƒšแƒ˜ แƒœแƒแƒ แƒ›แƒแƒšแƒฃแƒ แƒ˜ แƒแƒ“แƒแƒ›แƒ˜แƒแƒœแƒ”แƒ‘แƒ˜, แƒฉแƒ•แƒ”แƒœ แƒ•แƒ”แƒšแƒ˜แƒ—, แƒ แƒแƒ› แƒแƒ› แƒ’แƒแƒ›แƒแƒฎแƒแƒขแƒ•แƒ˜แƒก แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ NULL. แƒ›แƒแƒ’แƒ แƒแƒ› แƒ˜แƒฅ แƒแƒ  แƒ˜แƒงแƒ. แƒ›แƒแƒกแƒ˜แƒ•แƒ˜ แƒ“แƒแƒ‘แƒ แƒฃแƒœแƒ“แƒ. แƒ แƒแƒขแƒแƒ›? แƒ˜แƒ›แƒ˜แƒขแƒแƒ›, แƒ แƒแƒ› แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜ แƒ‘แƒแƒ–แƒ แƒแƒ•แƒ แƒชแƒ”แƒšแƒ”แƒ‘แƒก NULL-แƒก แƒ›แƒ—แƒ”แƒšแƒ˜ แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒกแƒ˜แƒ•แƒ–แƒ” แƒ“แƒ แƒ˜แƒ แƒ˜แƒ‘แƒแƒ“ แƒ˜แƒซแƒแƒฎแƒ”แƒ‘แƒก array_cat แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒก. แƒ›แƒแƒ’แƒ แƒแƒ› แƒฏแƒ”แƒ  แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ’แƒแƒฃแƒ แƒ™แƒ•แƒ”แƒ•แƒ”แƒšแƒ˜แƒ, แƒ แƒแƒขแƒแƒ› แƒแƒ  แƒแƒฆแƒแƒ“แƒ’แƒ”แƒœแƒก แƒ›แƒแƒกแƒ˜แƒ•แƒก แƒ”แƒก โ€žแƒ›แƒแƒกแƒ˜แƒ•แƒ˜แƒแƒœแƒ˜ แƒ™แƒแƒขแƒโ€œ. แƒ”แƒก แƒฅแƒชแƒ”แƒ•แƒ แƒแƒกแƒ”แƒ•แƒ” แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒฃแƒœแƒ“แƒ แƒ’แƒ•แƒแƒฎแƒกแƒแƒ•แƒ“แƒ”แƒก.

แƒจแƒ”แƒแƒฏแƒแƒ›แƒ”แƒ—. แƒ‘แƒ”แƒ•แƒ แƒ˜ แƒฃแƒชแƒœแƒแƒฃแƒ แƒ˜ แƒ แƒแƒ› แƒแƒ แƒ˜แƒก. แƒ›แƒแƒ—แƒ˜ แƒฃแƒ›แƒ”แƒขแƒ”แƒกแƒแƒ‘แƒ, แƒ แƒ แƒ—แƒฅแƒ›แƒ แƒฃแƒœแƒ“แƒ, แƒแƒ แƒช แƒ˜แƒกแƒ” แƒ™แƒ แƒ˜แƒขแƒ˜แƒ™แƒฃแƒšแƒ˜แƒ, แƒ แƒแƒ› แƒฃแƒฎแƒ”แƒจแƒแƒ“ แƒจแƒ”แƒฃแƒคแƒ”แƒ แƒ”แƒ‘แƒ”แƒš แƒฅแƒชแƒ”แƒ•แƒแƒ–แƒ” แƒ˜แƒกแƒแƒฃแƒ‘แƒ แƒแƒก. แƒ“แƒ แƒกแƒฎแƒ•แƒ”แƒ‘แƒ˜ แƒแƒ˜แƒฎแƒกแƒœแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜แƒ— แƒแƒœ แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒš แƒกแƒ˜แƒขแƒฃแƒแƒชแƒ˜แƒ”แƒ‘แƒจแƒ˜ แƒ›แƒแƒ—แƒ˜ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒฎแƒจแƒ˜แƒ แƒ˜แƒ—. แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ›แƒแƒ•แƒ” แƒ“แƒ แƒแƒก แƒ‘แƒ”แƒ•แƒ แƒ˜ แƒกแƒ˜แƒฃแƒ แƒžแƒ แƒ˜แƒ–แƒ˜ แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก. แƒแƒ›แƒ˜แƒขแƒแƒ›, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ˜แƒชแƒแƒ“แƒ”แƒ— แƒ›แƒแƒ— แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘. แƒ—แƒฃ แƒ แƒแƒ˜แƒ›แƒ” แƒกแƒฎแƒ•แƒ แƒฃแƒชแƒœแƒแƒฃแƒ แƒก แƒแƒœ แƒฃแƒฉแƒ•แƒ”แƒฃแƒšแƒแƒก แƒแƒฆแƒ›แƒแƒแƒฉแƒ”แƒœแƒ— แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒขแƒ˜แƒžแƒ˜แƒก แƒฅแƒชแƒ”แƒ•แƒแƒจแƒ˜, แƒ“แƒแƒฌแƒ”แƒ แƒ”แƒ— แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ”แƒ‘แƒจแƒ˜, แƒกแƒ˜แƒแƒ›แƒแƒ•แƒœแƒ”แƒ‘แƒ˜แƒ— แƒ“แƒแƒ•แƒแƒ›แƒแƒขแƒ”แƒ‘ แƒ›แƒแƒ—แƒ–แƒ” แƒแƒ แƒกแƒ”แƒ‘แƒฃแƒš แƒ“แƒแƒกแƒ˜แƒ”แƒ”แƒ‘แƒก.

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ