আমি VARCHAR
একটি এসকিউএল সার্ভার সারণীর নির্দিষ্ট কলামে দীর্ঘতম সন্ধান করতে চাই ।
এখানে একটি উদাহরণ:
ID = INT IDENTITY
DESC = VARCHAR(5000)
ID | Desc
---|-----
1 | a
2 | aaa
3 | aa
এসকিউএল 3 ফেরত কি? যেহেতু দীর্ঘতম মানটি 3 টি অক্ষর?
আমি VARCHAR
একটি এসকিউএল সার্ভার সারণীর নির্দিষ্ট কলামে দীর্ঘতম সন্ধান করতে চাই ।
এখানে একটি উদাহরণ:
ID = INT IDENTITY
DESC = VARCHAR(5000)
ID | Desc
---|-----
1 | a
2 | aaa
3 | aa
এসকিউএল 3 ফেরত কি? যেহেতু দীর্ঘতম মানটি 3 টি অক্ষর?
উত্তর:
বিবরণ কলামে দৈর্ঘ্য এবং সর্বাধিকের জন্য অন্তর্নির্মিত ফাংশনগুলি ব্যবহার করুন:
SELECT MAX(LEN(DESC)) FROM table_name;
মনে রাখবেন যে যদি আপনার টেবিলটি খুব বড় হয় তবে কার্য সম্পাদনের সমস্যা হতে পারে।
DATALENGTH
(যেহেতু আপনি NVARCHAR
কিছু জায়গায় ব্যবহার করতে পারেন বা কোনও দিন)।
জন্য MySQL তার দৈর্ঘ্য lên না
SELECT MAX(LENGTH(Desc)) FROM table_name
সতর্ক থেকো!! স্পেস থাকলে সেগুলি টি-এসকিউএল-তে লেন পদ্ধতি দ্বারা বিবেচনা করা হবে না। এই কৌশলটি আপনাকে এবং ব্যবহার করতে দেবেন না
select max(datalength(Desc)) from table_name
ওরাকল-এর ক্ষেত্রে এটি LEN এর পরিবর্তে LENGTH
SELECT MAX(LENGTH(Desc)) FROM table_name
এছাড়াও, ডিইএসসি একটি সংরক্ষিত শব্দ। যদিও অনেক সংরক্ষিত শব্দ এখনও অনেক পরিস্থিতিতে কলামের নামের জন্য কাজ করবে এটি করা খারাপ অভ্যাস, এবং কিছু পরিস্থিতিতে সমস্যার কারণ হতে পারে। এগুলি কোনও কারণে সংরক্ষিত।
ডেস্ক শব্দটি যদি কেবল উদাহরণ হিসাবে ব্যবহৃত হয়, তবে এটি লক্ষ করা উচিত যে প্রত্যেকে এটি উপলব্ধি করতে পারে না, তবে অনেকেই বুঝতে পারবেন যে এটি নেমে যাওয়ার জন্য একটি সংরক্ষিত শব্দ। ব্যক্তিগতভাবে, আমি এটি ব্যবহার করে শুরু করেছিলাম এবং তারপরে কলামের নামটি কোথায় গেছে তা বের করার চেষ্টা করেছিলাম কারণ আমার সমস্ত ছিল সংরক্ষিত শব্দ। এটি নির্ধারণ করতে খুব বেশি সময় লাগেনি, তবে আপনার আসল কলামের নামটি কী বিকল্পে রাখবেন তা সিদ্ধান্ত নেওয়ার সময় এটি মনে রাখবেন।
SELECT MAX(LEN(Desc)) as MaxLen FROM table
স্কেল সার্ভারের জন্য (এসএসএমএস)
select MAX(LEN(ColumnName)) from table_name
এটি অক্ষরের সংখ্যা প্রদান করবে।
select MAX(DATALENGTH(ColumnName)) from table_name
এটি ব্যবহৃত / প্রয়োজনীয় বাইট সংখ্যা প্রদান করবে।
যদি কেউ কেউ বারচার ব্যবহার করেন তবে তা ব্যবহার করুন DATALENGTH
। আরো বিস্তারিত
SELECT TOP 1 column_name, LEN(column_name) AS Lenght FROM table_name ORDER BY LEN(column_name) DESC
আপনি যে কলামটির দীর্ঘতম দৈর্ঘ্যযুক্ত তা সুনির্দিষ্টভাবে সনাক্ত করতে চান, বিশেষত আপনি যদি কোনও টেবিলে একটি সারিতে একটি কলামের দৈর্ঘ্য অন্য যে কোনও সারির তুলনায় এত দীর্ঘ কেন তা জানতে সমস্যা সমাধান করছেন। এই ক্যোয়ারীটি আপনাকে কোন সারিটি চিহ্নিত করার জন্য সারিতে একটি সনাক্তকারী তালিকাবদ্ধ করার বিকল্প দেবে।
select ID, [description], len([description]) as descriptionlength
FROM [database1].[dbo].[table1]
where len([description]) =
(select max(len([description]))
FROM [database1].[dbo].[table1]