মডিউল পাঠ (1/4)
স্ট্রিং ফাংশন
স্ট্রিং ম্যানিপুলেট করার জন্য PostgreSQL এর কয়েক ডজন ফাংশন রয়েছে। এই পাঠে
আমরা বাস্তব কাজের মধ্যে সবচেয়ে সাধারণের দিকে তাকাই: স্বাভাবিককরণ (LOWER/UPPER),
পরিমাপ (LENGTH), রচনা (|| / CONCAT), নিষ্কাশন (SUBSTRING),
পরিষ্কার করা (TRIM), প্রতিস্থাপন (REPLACE), এবং প্যাটার্ন অনুসন্ধান
(LIKE / ILIKE)।
আমরা যে ফাংশনগুলি ব্যবহার করব
LOWER('Alice') -- 'alice'
UPPER('alice') -- 'ALICE'
LENGTH('alice') -- 5
'a' || 'b' -- 'ab' (concatenazione)
CONCAT('a', 'b', 'c') -- 'abc' (versione "funzione")
SUBSTRING('hello' FROM 2 FOR 3) -- 'ell'
TRIM(' alice ') -- 'alice'
REPLACE('foo bar', 'bar','x') -- 'foo x'|| হল স্ট্রিং সংযুক্ত করার জন্য আদর্শ SQL অপারেটর; CONCAT হল৷
আরো অনুমতিমূলক (এটি NULLs উপেক্ষা করে, যখন || তাদের প্রচার করে:
'a' || NULL → NULL)।
LIKE এবং ILIKE: প্যাটার্ন দ্বারা অনুসন্ধান
LIKE একটি প্যাটার্ন অনুসন্ধান করে: % = যেকোনো ক্রম, _ = একটি একক
চরিত্র এটি কেস-সংবেদনশীল। ILIKE হল PostgreSQL
কেস-সংবেদনশীল বৈকল্পিক:
WHERE name LIKE '%Cuffie%' -- match esatto "Cuffie"
WHERE name ILIKE '%cuffie%' -- match anche "CUFFIE", "Cuffie", "cuffie"
WHERE email LIKE '%@example.com'
WHERE first_name LIKE 'A_____' -- inizia per A, lungo 6 (A + 5 caratteri)প্যাটার্নের ভিতরে একটি আক্ষরিক % বা _ অনুসন্ধান করতে, ESCAPE ব্যবহার করুন:
WHERE titolo LIKE '%50\%%' ESCAPE '\'; -- contiene "50%"ফাংশন সমন্বয়
ফাংশনগুলি যে কোনও ভাষার মতো রচনা করে:
-- Email "normalizzata" e iniziali in maiuscolo:
SELECT LOWER(email) AS email_norm,
UPPER(SUBSTRING(first_name FROM 1 FOR 1)) || '.'
|| UPPER(SUBSTRING(last_name FROM 1 FOR 1)) || '.' AS iniziali
FROM customers
ORDER BY id;চেষ্টা করে দেখুন
প্রতিটি গ্রাহকের জন্য, ইমেলটি ছোট হাতের অক্ষরে (কলাম ইমেল) এবং পুরো নামটি 'first_name last_name' (কলাম full_name) হিসাবে দেখান। আইডি দিয়ে অর্ডার করুন।
ইঙ্গিত দেখান
প্রথম কলামের জন্য নিম্ন, || মধ্যে একটি স্থান সঙ্গে সংযুক্ত করা
সমাধান 3 প্রচেষ্টার পরে উপলব্ধ
ব্যায়াম পর্যালোচনা করুন
নামের মধ্যে 'ল্যাপটপ' শব্দটি (যেকোন ক্ষেত্রে) আছে এমন সমস্ত পণ্য খুঁজুন। শুধুমাত্র নাম কলাম দেখান. নাম অনুসারে অর্ডার করুন।
ইঙ্গিত দেখান
ILIKE কেস-সংবেদনশীল। যেকোনো অবস্থানে 'ল্যাপটপ' এর সাথে মিল রাখতে '% laptop%' ব্যবহার করুন।
সমাধান 3 প্রচেষ্টার পরে উপলব্ধ