SQL एक विशिष्ट प्रयोजन: रिलेशनल डेटाबेस में रखे हुए डेटा के क्वेरी के लिए डिजाइन किया गया है। SQL एक सेट-आधारित, डिक्लेयरेटिव, क्वेरी लैंग्वेज़ है, न कि C या BASIC (बेसिक)की तरह का एक 'इम्पेरेटिव लेंग्वेज'. हालांकि, मानक SQL के विस्तारण मौजूद हैं जो प्रोसीडूरल प्रोगार्मिंग लैंग्वेज़ की क्रियात्मकता, जैसे कि 'कंट्रोल-ऑफ-फ्लो कन्सट्रक्ट्स', प्रदान करते हैं। ये हैं:

मानक SQL/PSM एक्सटेंशंस (विस्तारणों) और प्रोपरायटरी SQL एक्सटेंशंस (विस्तारणों) के अलावा, प्रोसीडूरल और ऑब्जेक्ट ओरिएन्टेड प्रोग्रामिंग विशिष्टताओं की सुविधा DBMS के दूसरे लैंग्वेज़ों के साथ एकीकरण के ज़रिये प्राप्त की जा सकती है। SQL मानक, SQL डेटाबेस में जावा कोड को सपोर्ट करने के लिए, SQL/JRT एक्सटेंशंस (जावा प्रोग्रामिंग लैंगवेज़ के लिए SQL रूटीन्स और टाइप्स) को निरूपित करता है। SQL सर्वर 2005 SQLCLR (SQL सर्वर कॉमन लैंग्वेज़ रन टाइम) का प्रयोग डेटाबेस में प्रबंधित .NET असेम्बलियों की मेजबानी के लिए होता है, जबकि SQL सर्वर के पूर्व संस्करण मुख्यतः C में लिखे गए अप्रबंधित एक्सटेन्डेड स्टोर्ड प्रोसीज़रों के उपयोग तक ही सीमित थे। अन्य डेटाबेस प्लैटफॉर्म्स, जैसे MySQL और पोस्टग्रीस (Postgres), फंक्शनों को पर्ल (Perl), पायथन (python), Tcl और C जैसे विभिन्न प्रकार के लैंग्वेज़ों में लिखने की अनुमति देते हैं।

प्रोसीडूरल एक्सटेंशंस (प्रक्रियात्मक विस्तारण)
डेटा टाइप्स (प्रकार)
डेटा कंट्रोल (नियंत्रण)
मानक संरचना