आप वैकल्पिक सिंटैक्स का उपयोग सरणी शाब्दिक . के साथ कर सकते हैं एरे कंस्ट्रक्टर के बजाय, जो एक पोस्टग्रेज फंक्शन-जैसी कंस्ट्रक्शन है और जब आपको वैल्यू पास करने की आवश्यकता होती है तो परेशानी हो सकती है - जैसे तैयार बयान में:
SELECT myschema.myfunc('0d6311cc-0d74-4a32-8cf9-87835651e1ee'
, '{"(0d6311cc-0d74-4a32-8cf9-87835651e1ee, 25)"
, "(6449fb3b-844e-440e-8973-31eb6bbefc81, 10)"}'::mytype[]);
मैंने प्रदर्शन के लिए सरणी में दो पंक्ति प्रकारों के बीच एक लाइन ब्रेक जोड़ा। यह कानूनी है।
किसी भी . के लिए सही सिंटैक्स कैसे खोजें शाब्दिक?
बस पोस्टग्रेज से पूछो। यहाँ एक डेमो है:
CREATE TABLE mytype (id uuid, amount numeric(13,4));
INSERT INTO mytype VALUES
('0d6311cc-0d74-4a32-8cf9-87835651e1ee', 25)
,('6449fb3b-844e-440e-8973-31eb6bbefc81', 10);
SELECT ARRAY(SELECT m FROM mytype m);
रिटर्न:
{"(0d6311cc-0d74-4a32-8cf9-87835651e1ee,25.0000)","(6449fb3b-844e-440e-8973-31eb6bbefc81,10.0000)"}
db<>फिडल यहाँ
कोई भी तालिका (अस्थायी तालिकाओं सहित) परोक्ष रूप से समान नाम की एक पंक्ति प्रकार बनाती है।