পোস্টগ্রেস / পোস্টজিআরই এসকিউএল একটি এডভান্সড ওপেন সোর্স রিলেশনাল ডেটাবেজ
লিনাক্সে ইনস্টল
sudo apt-get install postgresql postgresql-contribউইন্ডোজে ইনস্টল
just type in the name of the executable and hit enter(PostgreSQL-Installer.exe)ম্যাকে ইনস্টল
brew install postgresqlসার্ভারের সাথে কানেক্ট করা
sudo su - postgres(ডিফল্ট ইউজার)সার্ভারে লগইন করা
psqlলগইন ডিটেইলস জানা
\conninfoনতুন ইউজার ক্রিয়েট করা
sudo -u postgres createuser <username>নতুন ইউজারের পাসওয়ার্ড সেট করা
alter user <username> with encrypted password '<password>'নতুন ইউজারকে নির্দিষ্ট ডেটাবেজে এক্সেস পারমিশন দেয়া
grant all privileges on database <dbname> to <username>নির্দিষ্ট ইউজারকে ডিলিট করা
su - postgres -c 'dropuser www-dtata'সার্ভার থেকে ডিসকানেক্ট/লগআউট হয়ে যাওয়া
\qএকটা টেবিলের সব ডেটা দেখা
SELECT * FROM table_nameস্পেসিফিক কলামের সব ডেটা দেখা
SELECT column, column2….FROM tableটেবিলের ইউনিক রো এর ডেটা দেখা
SELECT DISTINCT (column) FROM tableফিল্টার করে ডেটা দেখা
SELECT * FROM table WHERE conditionএকাধিক কন্ডিশন ফিল্টার করে ডেটা দেখা(AND / OR)
SELECT * FROM table WHERE condition1 AND condition2 OR condition3 ...... conditionN;একটি কলামের মানের জন্য একাধিক ভ্যালু ফিল্টার করে ডেটা দেখা(IN)
SELECT * FROM table WHERE (column) IN (value1,value2,...... valueN);একটি কলামের মান নির্দিষ্ট সীমায় আছে কীনা চেক করা(BETWEEN)
SELECT * FROM table WHERE (column) BETWEEN (lower bound) AND (upper bound);নির্দিষ্ট সংখ্যক আউটপুট কুয়েরি করা(LIMIT)
SELECT * FROM table LIMIT 10;কুয়েরির ১ম থেকে নির্দিষ্ট সংখ্যক রো বাদ দিয়ে তারপর থেকে দেখানো(OFFSET)
SELECT * FROM table OFFSET 10;স্ট্রিং ম্যাচ করে ডেটা দেখা
SELECT * FROM table_name WHERE column LIKE '%value%'কুয়েরি আউটপুট pretty-format এ দেখা
\xটেবিল নতুন কলাম এড করা
ALTER TABLE table_name ADD COLUMN new_column_name TYPEটেবিলের স্পেসিফিক রো ডিলিট করে দেয়া
DELETE FROM table_name WHERE conditionটেবিলের ইউনিক রো এর ডেটা দেখা
SELECT DISTINCT (column) FROM tableটেবিলের সব রো ডিলিট করে দেয়া
DELETE FROM table_nameটেবিলের (যে টেবিল অন্য টেবিলের সাথে রিলেশন আছে) সব রো ডিলিট করার ক্ষেত্রে
TRUNCATE tableName RESTART IDENTITY CASCADEক্রমানুসারে ডাটা কুয়েরি করা
SELECT * FROM table ORDER BY ASC/ DESC;ক্রস জয়েন(ডান টেবিলের প্রতি রো এর জন্য বাম টেবিলের সকল রো এর কম্বিনেশন)
SELECT (column) FROM left_table CROSS JOIN right_table;ইনার জয়েন(বাম টেবিলের যেসব রো এর প্রাইমারি কি ডান টেবিলে ফরেইন কি হিসেবে আছে)
SELECT left_table.column,...right_table.column FROM left_table INNER JOIN right_table ON left_table.pk = right_table.fk;লেফট আউটার জয়েন(বাম টেবিলের সব রো, ডান টেবিলের মিলে যাওয়া রো)
SELECT (columns) FROM left_table LEFT OUTER JOIN right_table ON left_table.pk = right_table.fk;রাইট আউটার জয়েন(ডান টেবিলের সব রো, বাম টেবিলের মিলে যাওয়া রো)
SELECT (columns) FROM left_table RIGHT OUTER JOIN right_table ON left_table.pk = right_table.fk;ফুল আউটার জয়েন(২ টেবিলের কমন আনকমন সব রো)
SELECT * FROM left_table FULL OUTER JOIN right_table ON left_table.pk = right_table.fk;ডেটাবেজ ক্রিয়েট করা
CREATE DATABASE yourdbnameস্পেসিফিক ডেটাবেজের সাথে কানেক্ট হওয়া
\c database_nameসার্ভারে এভাইলেবল ডাটাবেজের লিস্ট দেখা
\lসার্ভারে এভাইলেবল ডাটাবেজের স্কিমা দেখা
\dnকারেন্ট ডাটাবেজের সব টেবিল দেখা
\dtস্পেসিফিক টেবিলের সব ইনফরমেশন দেখা
\d+ table_nameসকল ইউজারের লিস্ট দেখা
\duনতুন রোল ক্রিয়েট করা
CREATE ROLE role_nameডেটাবেজ পার্মানেন্টলি ডিলিট করে দেয়া
DROP DATABASE [IF EXISTS] db_nameডেটাবেজের নাম পরিবর্তন
ALTER DATABASE <old_name> RENAME TO <new_name>কারেন্ট ইউজার দেখা
SELECT current_userকলামের সর্বনিম্ন মান বের করা
SELECT MIN(column name) FROM table;কলামের সর্বোচ্চ মান বের করা
SELECT MAX(column name) FROM table;কলামের সকল মানের গড় বের করা
SELECT AVG(column name) FROM table;কলামের সকল মানের সমষ্টি বের করা
SELECT SUM(column name) FROM table;n দশমিক স্থান পর্যন্ত আসন্ন মান বের করা(ROUND)
SELECT ROUND(AVG(column name), n) FROM table;n দশমিক স্থান পর্যন্ত মান বের করা(TRUNC)
SELECT TRUNC(AVG(column name), n) FROM table;