2015-05-16 5 views
8

psql कंसोल में \d या \l जैसे कई उपयोगी शॉर्टकट हैं। मुझे आश्चर्य है कि SELECT * FROM table_name के लिए कोई है? मैं सीखने के उद्देश्यों के लिए अक्सर इस क्वेरी का उपयोग करता हूं, इसलिए यह मेरे लिए select * from लिखने में काफी मददगार होगा।क्या psql में से चुनें * के लिए शॉर्टकट है?

+0

आपको 'SELECT *' बिल्कुल नहीं लिखना चाहिए :-) इसे आमतौर पर खराब अभ्यास माना जाता है (उत्पादन प्रश्नों के लिए, निश्चित रूप से आप इसे परीक्षण के लिए कर सकते हैं): आप नहीं देख सकते कि कौन से कॉलम वापस किए जाएंगे और किस क्रम में, आपको आमतौर पर सभी कॉलम की आवश्यकता नहीं होती है और जब तालिका परिभाषा बदल जाती है तो यह लौटाए गए डेटा के लेआउट को बदल देगा। – dnoeth

+6

@ डेनोथ: ऐसे कई मामले हैं जहां आपको 'चयन *' की आवश्यकता है और यहां तक ​​कि और भी जहां यह सुविधाजनक है। तथ्य यह है कि यह अक्सर (एबी) उन जगहों पर उपयोग किया जाता है जहां इसे नहीं करना चाहिए, एक सामान्य कथन की गारंटी नहीं है जैसे "आपको इसका उपयोग नहीं करना चाहिए"। यह कहने की तरह: "आपको knifes का उपयोग नहीं करना चाहिए"। –

+0

@ डेनोथ मुझे पता है कि आपका क्या मतलब है, लेकिन जैसा कि मैंने "सीखने के उद्देश्यों के लिए" कहा है;) – user3616181

उत्तर

22

एक "शॉर्टकट" मानक SQL में नहीं है, इसलिए आप psql में इसका इस्तेमाल कर सकते हैं:

TABLE tablename; 

पता है कि इस संक्षिप्त रूप केवल खंड की एक सीमित रेंज के साथ इस्तेमाल किया जा सकता है।
Per documentation:

यह एक उच्च-स्तरीय आदेश के रूप में या जटिल प्रश्न के कुछ हिस्सों में एक अंतरिक्ष की बचत वाक्य रचना उपादानों के रूप में इस्तेमाल किया जा सकता। केवल WITH, UNION, INTERSECT, EXCEPT, ORDER BY, LIMIT, OFFSET, FETCH और FOR ताला लगा खंड TABLE के साथ प्रयोग किया जा सकता है; WHERE खंड और किसी भी प्रकार का एकत्रीकरण का उपयोग नहीं किया जा सकता है।

+2

बढ़िया, यही वही है जो मैं चाहता हूं। धन्यवाद इरविन। – user3616181

+1

यह 13 में से 8 अक्षरों को बचाता है;), जो चीजें वे भाषा में डालते हैं, उन्हें देखें। एक बार फिर, पोस्टग्रेस के बारे में आपका ज्ञान चमकता है। –

+0

जो सेल्को के अनुसार (एक दशक के लिए एएनएसआई एसक्यूएल बोर्ड/समिति पर) - एक समिति ने कभी ऐसा विचार नहीं देखा जो इसे पसंद नहीं आया ... –

संबंधित मुद्दे