SQL সার্ভারে, SELECT TOP কমান্ড SQL সার্ভারে এক বা একাধিক টেবিল থেকে রেকর্ড পুনরুদ্ধার করতে এবং একটি নির্দিষ্ট মান বা শতাংশের উপর ভিত্তি করে রিটার্ন রেকর্ডের সংখ্যা সীমিত করতে ব্যবহৃত হয়৷
সিনট্যাক্স সিলেক্ট টপ কমান্ড
SELECT TOP (giatri_dau) [PERCENT] [WITH TIES]
bieu_thuc
FROM bang
[WHERE dieu_kien]
[ORDER BY bieu_thuc [ ASC | DESC ]];
ভেরিয়েবল নাম বা পরিবর্তনশীল মান
TOP (giatri_dau)
giatri_dau-এর উপর ভিত্তি করে ফলাফল প্রদান করে। উদাহরণস্বরূপ, TOP (10) ফলাফল সেট থেকে প্রথম 10টি সারি সন্নিবেশ করবে৷
PERCENT৷
বিকল্প৷ যদি নির্দিষ্ট করা থাকে, প্রথম সারিগুলি ফলাফল সেটের giatri_dau-এর শতাংশের উপর ভিত্তি করে। উদাহরণস্বরূপ, TOP (10) PERCENT ফলাফল সেটে প্রথম মানের 10% সন্নিবেশ করবে।
টাইস সহ৷
বিকল্প৷ যদি এই ধারাটি ব্যবহার করা হয়, ফলাফল সেটের শেষ সারির মতো একই মান সহ সারিগুলি ফেরত দেওয়া হবে। এর ফলে এমন পরিস্থিতি হতে পারে যেখানে প্রত্যাবর্তিত সারির সংখ্যা TOP অনুমতি দেওয়ার চেয়ে বেশি।
bieu_thuc
কলাম বা গণনা করা মান পুনরুদ্ধার করা উচিত
state
টেবিল সেখান থেকে রেকর্ড পেতে চায়৷ FROM ক্লজে কমপক্ষে 1টি টেবিল থাকতে হবে।
WHERE dieu_kien
বিকল্প৷ রেকর্ড নির্বাচন করার জন্য শর্ত পূরণ করতে হবে।
অর্ডার বাই bieu_thuc
বিকল্প৷ ফলাফল অর্ডার করতে ব্যবহার করুন. ASC আরোহী ক্রমে, DESC অবরোহ ক্রমে।
উদাহরণস্বরূপ - TOP কীওয়ার্ড ব্যবহার করুন
SELECT TOP(5)
nhanvien_id, ho, ten
FROM nhanvien
WHERE ho = 'Anderson'
ORDER BY nh
anvien_id;
উপরের উদাহরণটি টেবিলের প্রথম 5টি রেকর্ড পুনরুদ্ধার করবে যখন শেষ নাম অ্যান্ডারসন হবে৷ যদি অন্যান্য রেকর্ডে অ্যান্ডারসনের পারিবারিক নামও থাকে, তবে সেগুলি SELECT বিবৃতিতে ফেরত দেওয়া হয় না৷
উপরের উদাহরণটি WITH TIES ক্লজ যোগ করে কিছুটা সম্পাদনা করা যেতে পারে
SELECT TOP (5) WITH TIES
nhanvien_id, ho, ten
FROM nhanvien
WHERE ho = 'Anderson'
ORDER BY nhanv
ien_id;
এই উদাহরণটি ফলাফল সেটের শেষ সারির মতো একই সারি দেবে৷
উদাহরণস্বরূপ - TOP PERCENT কীওয়ার্ড ব্যবহার করুন
SELECT TOP(10) PERCENT
nhanvien_id, ho, ten
FROM nhanvien
WHERE ho = 'Anderson'
ORDER B
Y nhanvien_id;
এই উদাহরণটি কর্মচারী টেবিলে রেকর্ড করা প্রথম 10% ফলাফল ফিরিয়ে দেবে যাদের শেষ নাম অ্যান্ডারসন। বাকি 90% ফেরত দেওয়া হবে না।
SELECT TOP(10) PERCENT WITH TIES
nhanvien_id, ho, ten
FROM nhanvien
WHERE ho = 'Anderson'
ORDER BY nha
dentist_id;
TIES এর সাথে, প্রত্যাবর্তিত ফলাফলে ফলাফল সেটের শেষ সারির মতো একই সারি থাকবে৷ ফলাফল সেট তখন 10% এর বেশি হবে।