cast(varchar_col AS int) -- SQL standard
या
varchar_col::int -- Postgres syntax shorthand
थीसिस सिंटैक्स वेरिएंट मान्य हैं (लगभग) कहीं भी . दूसरे को विशेष परिस्थितियों में नेस्टिंग कोष्ठक की आवश्यकता हो सकती है:
- PostgreSQL:सभी टेबल फ़ील्ड की लंबाई पर इंडेक्स बनाएं
और पहले की आवश्यकता हो सकती है जहां सिंटैक्स प्रतिबंधों द्वारा केवल कार्यात्मक संकेतन की अनुमति है:
- PostgreSQL - CAST बनाम ::लेटरल टेबल फंक्शन पर ऑपरेटर
दो और प्रकार हैं:
int4(varchar_col) -- only works for some type names
int '123' -- must be an untyped, quoted string literal
ध्यान दें कि मैंने कैसे लिखा int4
(varchar_col)
. वह आंतरिक प्रकार का नाम है और इसके लिए परिभाषित एक फ़ंक्शन भी है। integer()
के रूप में काम नहीं करेगा स्ट्राइक> या <स्ट्राइक>int()
स्ट्राइक> ।
यह भी ध्यान दें कि अंतिम फॉर्म सरणी . के लिए काम नहीं करता है प्रकार। <स्ट्राइक>int[] '{1,2,3}'
स्ट्राइक> होना चाहिए '{1,2,3}'::int[]
या cast('{1,2,3}' AS int[])
।
मैनुअल में विवरण यहां और यहां ।
integer
. के लिए मान्य होने के लिए , स्ट्रिंग में एक वैकल्पिक प्रमुख चिह्न शामिल होना चाहिए (+
/-
) केवल अंकों के बाद। अग्रणी / अनुगामी सफेद स्थान को नजरअंदाज कर दिया जाता है।