SQL ডেভেলপারদের জন্য ইন্টারভিউ প্রশ্ন: সাধারণ SQL ইন্টারভিউ প্রশ্নোত্তর- পার্ট 4

এসকিউএল-এ তৈরির ধারণা এবং সেগুলি ব্যবহারের সুবিধা ব্যাখ্যা function করুন procedure

উত্তর: Function এবং procedure এসকিউএল-এ কোড ব্লকের নাম দেওয়া হয়েছে যেগুলি অন্য প্রশ্ন বা অ্যাপ্লিকেশন থেকে কল করা যেতে পারে।

  • Function: একটি মান প্রদান করে এবং প্রায়শই গণনা এবং ফলাফল ফেরানোর জন্য ব্যবহৃত হয়।
  • Procedure: কোনো মান ফেরত দেয় না এবং ডেটা প্রসেসিং বা স্টোরেজ কাজ সম্পাদন করতে ব্যবহৃত হয়।

ফাংশন এবং পদ্ধতি ব্যবহার করার সুবিধার মধ্যে রয়েছে:

  • কোড সদৃশতা হ্রাস করা, কোড বজায় রাখা এবং পরিচালনা করা সহজ করে তোলে।
  • পুনঃব্যবহারযোগ্যতা বৃদ্ধি, কোড একাধিক জায়গায় পুনরায় ব্যবহার করার অনুমতি দেয়।
  • কর্মক্ষমতা উন্নত করা, কারণ ফাংশন এবং পদ্ধতিগুলি প্রায়শই একবার সংকলিত হয় এবং একাধিকবার পুনরায় ব্যবহার করা হয়।

 

RECURSIVE প্রশ্ন এবং COMMON TABLE EXPRESSION(CTE) এসকিউএল-এ কীভাবে ব্যবহার করবেন ।

উত্তর: RECURSIVE ক্যোয়ারী এবং COMMON TABLE EXPRESSION(CTE) পুনরাবৃত্ত প্রশ্নগুলি পরিচালনা করতে এবং SQL এ একটি প্রশ্নের একটি অংশ পুনঃব্যবহার করতে ব্যবহৃত হয়।

  • RECURSIVE: ডাটাবেসে পুনরাবৃত্ত প্রশ্ন সম্পাদনের অনুমতি দেয়।
  • CTE: একটি অস্থায়ী ফলাফল সেট হিসাবে কাজ করে, একটি প্রশ্নকে ছোট, আরও পরিচালনাযোগ্য অংশে বিভক্ত করে।
WITH RECURSIVE RecursiveCTE(ID, ParentID, Level) AS( 
  SELECT ID, ParentID, 0 AS Level FROM Categories WHERE ParentID IS NULL  
  UNION ALL  
  SELECT C.ID, C.ParentID, Level + 1 FROM Categories C  
  INNER JOIN RecursiveCTE RC ON C.ParentID = RC.ID  
)  
SELECT * FROM RecursiveCTE;  

 

SQ-তে ডুপ্লিকেট ডেটা এবং অবৈধ ডেটা কেস কীভাবে পরিচালনা করবেন

উত্তর: এসকিউএল-এ ডুপ্লিকেট এবং অবৈধ ডেটা পরিচালনা করতে, আমরা ডেটা স্বতন্ত্রতা নিশ্চিত করতে DISTINCT, GROUP BY, HAVING এবং অনন্য সীমাবদ্ধতার মতো SQL স্টেটমেন্ট ব্যবহার করতে পারি। উপরন্তু, আমরা সদৃশ বা অবৈধ রেকর্ড মুছে ফেলার জন্য বিবৃতি UPDATE ব্যবহার করতে পারি। DELETE

 

এসকিউএল সার্ভারে বিশেষ ডেটা টাইপের অনুবাদ এখানে

Các kiểu dữ liệu đặc biệt như XML, GEOGRAPHY, và geometry trong SQL Server được sử dụng để lưu trữ và làm việc liệu vữp và làm việc liệu vữ c tap. Dưới đây là mô tả về từng kiểu dữ liệu này:

XML:

  • SQL সার্ভারে XML ডেটা টাইপ এক্সটেনসিবল মার্কআপ ল্যাঙ্গুয়েজ ফরম্যাটে ডেটা সংরক্ষণ এবং কাজ করার অনুমতি দেয়।
  • XML ডেটা সমৃদ্ধ কাঠামো ধারণ করতে পারে, সুসংগঠিত এবং নমনীয় তথ্য সঞ্চয় করতে সক্ষম করে।
  • এসকিউএল সার্ভার এক্সএমএল ডেটা ম্যানিপুলেট করার ফাংশন এবং পদ্ধতি প্রদান করে, এক্সএমএল ডেটা অনুসন্ধান, তৈরি এবং রূপান্তর করার অনুমতি দেয়।

GEOGRAPHY এবং GEOMETRY:

  • SQL সার্ভারে GEOGRAPHY এবং ডেটা প্রকারগুলি ভৌগলিক এবং জ্যামিতিক তথ্য সংরক্ষণ করতে ব্যবহৃত হয়। GEOMETRY
  • GEOGRAPHY ভূ-পৃষ্ঠের বিন্দু, রেখা, অঞ্চল এবং বহুভুজের মতো ভৌগলিক বস্তুর প্রতিনিধিত্ব করতে ব্যবহৃত হয়।
  • GEOMETRY সমতল স্থানে বিন্দু, রেখা, অঞ্চল এবং বহুভুজের মতো জ্যামিতিক বস্তুর প্রতিনিধিত্ব করতে ব্যবহৃত হয়।

উভয় ডেটা প্রকারই ভৌগলিক এবং জ্যামিতিক ডেটা অনুসন্ধান এবং বিশ্লেষণের জন্য বিশেষ ক্রিয়াকলাপ এবং ফাংশন সমর্থন করে।

 

এসকিউএল-এ তারিখ এবং সময় ডেটা পরিচালনার জন্য ফাংশন এবং ফাংশন ব্যাখ্যা করুন

এসকিউএল-এ তারিখ এবং সময় ডেটা প্রক্রিয়াকরণের জন্য ফাংশন এবং বৈশিষ্ট্যগুলি ডাটাবেসের তারিখ এবং সময়ের সাথে সম্পর্কিত কাজগুলি পরিচালনা এবং সম্পাদন করতে ব্যবহৃত হয়। এখানে কিছু সাধারণ ফাংশন এবং বৈশিষ্ট্যগুলির একটি বিশদ বিবরণ রয়েছে:

DATEPART(): এই ফাংশনটি তারিখ বা সময়ের মান থেকে একটি নির্দিষ্ট উপাদান(যেমন, দিন, মাস, বছর, ঘন্টা, মিনিট, সেকেন্ড) বের করতে ব্যবহৃত হয়।

SELECT DATEPART(YEAR, '2023-07-19'); -- Result: 2023

DATEDIFF(): এই ফাংশন দুটি তারিখ বা সময়ের মানের মধ্যে সময়ের পার্থক্য গণনা করে।

SELECT DATEDIFF(DAY, '2023-07-01', '2023-07-19'); -- Result: 18(number of days between two dates)

DATEADD(): এই ফাংশনটি একটি তারিখ বা সময়ের মানতে নির্দিষ্ট সংখ্যক দিন, মাস, বছর বা সময় যোগ করে।

SELECT DATEADD(DAY, 7, '2023-07-19'); -- Result: '2023-07-26'(adding 7 days)

GETDATE(): এই ফাংশন সিস্টেমের বর্তমান তারিখ এবং সময় প্রদান করে।

SELECT GETDATE(); -- Result: '2023-07-19 12:34:56.789'

CONVERT(): এই ফাংশনটি তারিখ বা সময়ের মানকে এক ফর্ম্যাট থেকে অন্য ফর্ম্যাটে রূপান্তর করতে ব্যবহৃত হয়।

SELECT CONVERT(VARCHAR, '2023-07-19', 103); -- Result: '19/07/2023'

FORMAT(): এই ফাংশনটি একটি পূর্বনির্ধারিত প্যাটার্ন অনুযায়ী তারিখ বা সময়ের মান বিন্যাস করতে ব্যবহৃত হয়।

SELECT FORMAT('2023-07-19', 'dd/MM/yyyy'); -- Result: '19/07/2023'