কিউজিআইএস-এ একই সাথে একাধিক ক্ষেত্রগুলি বাছাই করা সম্ভব?
উদাহরণস্বরূপ, আমি রাষ্ট্রের নাম অনুসারে একটি টেবিল বাছাই করতে চাই এবং তারপরে প্রতিটি রাজ্যের মধ্যে, কাউন্টির নাম অনুসারে বাছাই করব।
এটি আর্কম্যাপে উপলব্ধ অ্যাডভান্সড সাজ্ট বিকল্পের সমান হবে।
কিউজিআইএস-এ একই সাথে একাধিক ক্ষেত্রগুলি বাছাই করা সম্ভব?
উদাহরণস্বরূপ, আমি রাষ্ট্রের নাম অনুসারে একটি টেবিল বাছাই করতে চাই এবং তারপরে প্রতিটি রাজ্যের মধ্যে, কাউন্টির নাম অনুসারে বাছাই করব।
এটি আর্কম্যাপে উপলব্ধ অ্যাডভান্সড সাজ্ট বিকল্পের সমান হবে।
উত্তর:
আসলে খুব সাধারণ কৌশল আছে। ধরুন আপনি প্রথমে "A" ক্ষেত্র অনুসারে বাছাই করতে চান এবং তারপরে "A" এর মধ্যে "বি" ক্ষেত্র অনুসারে। বৈশিষ্ট্য সারণীতে "বি" ক্ষেত্রের শিরোনামে প্রথম বাম ক্লিক (আরোহণের জন্য একবার ক্লিক করুন, উত্থানের জন্য দ্বিতীয় বার)। তারপরে মাঠের "A" শিরোনামের বাম ক্লিক করুন (একবার ASC এর জন্য, DESC এর জন্য দ্বিতীয়বার)। এই শেষ ক্রিয়াটি "এ" এর অনুরূপ মানের মধ্যে "বি" ক্ষেত্রের বাছাই সংরক্ষণের সময় "A" ক্ষেত্রটি বাছাই করবে। এটি 3 টি ক্ষেত্রের সাথে চেষ্টা করে এবং এটিও কাজ করে (তারপরে বিরক্ত হয়ে পড়ে)। আমি কিউজিআইএস ৩..3.৩-নূসা ব্যবহার করছি।
আপনি বাছাই করুন এবং নম্বর প্লাগইন ব্যবহার করতে পারেন । এটি আপনাকে 3 টি ক্ষেত্রের দ্বারা একটি বিশিষ্ট টেবিলটি বাছাই করতে দেয়, তারপরে এটি একটি অতিরিক্ত ক্ষেত্র তৈরি করে যাতে সাজানো বৈশিষ্ট্যগুলির ক্রম থাকে।
দাবি অস্বীকার: আমি প্লাগইনটির লেখক।
sort()
করে, আমি ভাবছি কেন এটি এত ধীর। ভবিষ্যতের সংস্করণে প্রক্রিয়াটি দ্রুততর করার জন্য আমি কিছু কৌশল খুঁজে বের করার চেষ্টা করব।
স্থায়ীভাবে ফলাফল সংরক্ষণ করা ঠিক থাকলে আপনি জিডিএল দিয়ে শেফফিলটি বাছাই করতে পারেন
ogr2ogr -f "ESRI Shapefile" -dialect sqlite -sql "SELECT *
FROM my_shapefile ORDER BY attr_1, attr_2, attr_3" sorted.shp my_shapefile.shp
এক মিলিয়ন বহুভুজযুক্ত শেফফাইলের সাথে 3 মিনিটের কম সময় নিয়েছে।
কিউজিআইএস-এর ডিবি ম্যানেজার প্লাগইনে এখন একটি 'ভার্চুয়াল লেয়ারস' নোড রয়েছে যা আপনাকে আপনার কিউজিআইএস প্রকল্পে লোড হওয়া শেফফিলের বিরুদ্ধে এসকিউএল কমান্ড লিখতে দেয়।
সুতরাং এখন আপনার এই ক্ষমতাটি রয়েছে, একাধিক ক্ষেত্র অনুসারে বাছাইয়ের জন্য এসকিউএল যুক্তিটি এসিএস (আরোহী), ডেস্ক (অবরোহক) ব্যবহার করে অর্ডার বাই স্টেটমেন্টে রয়েছে এবং আপনি একাধিক কলাম অনুসারে বাছাই করতে তাদের এক সাথে স্ট্রিং করতে পারেন:
একটি যুক্ত বোনাস হ'ল আপনি আরও এসকিউএল শিখবেন তাই আপনি যখন শেফফাইলে অসুস্থ হয়ে পড়বেন এবং পোস্টজিআইএস-এ বেশিরভাগ ক্ষেত্রে লিপটি এত দুর্দান্ত হবে না !!!
এটি এখন কোনও প্লাগইন বা ডাটাবেস-নির্দিষ্ট কাজ ছাড়াই করা যেতে পারে, কমপক্ষে সংস্করণ 3.2+ এর জন্য। একাধিক কলাম অনুসারে বাছাই করতে:
concat()
যথাযথ ক্রম অনুসারে আপনি যে ক্ষেত্রগুলি বাছাই করতে চান তার সাথে ফাংশন যুক্ত করুন (প্রাক্তন concat("column1", "column2")
)। আপনার কোডের নীচে একটি আউটপুট পূর্বরূপ দেখানো উচিত।এই কার্যকারিতাটি # 1137 ইস্যুটির মাধ্যমে যুক্ত করা হয়েছে এবং ব্যবহারকারীর ম্যানুয়ালটির সর্বশেষ (বিকাশ) সংস্করণে .াকা রয়েছে ।
concat("col1", right( ('000' || tostring( "col2" )), 4))
ঠিক আছে, এটি এখন 2018 তাই আমি বিশ্বাস করতে পারি না এটির উত্তর এখনও দেওয়া হয়নি।
বৈশিষ্ট্য সারণী দর্শনটি খুলুন এবং যে কোনও কলামে ডান ক্লিক করুন, তারপরে বাছাই করুন ...
ডায়ালগ উইন্ডো কনফিগার করুন অ্যাট্রিবিউট টেবিল সাজানোর ক্রম পুরো এক্সপ্রেশন সম্পাদক সহ এখন খোলা আছে
পছন্দসই কলামগুলির সাথে COALESCE ফাংশনটি ব্যবহার করুন, উদাহরণস্বরূপ, এটি 3 টি কলাম দ্বারা একটি টেবিলটি সাজান (প্রথমে ID এর পরে ভার্সন এবং তারপরে ফিড)
coalesce("ID","VERSION","fid" )
ওকে ক্লিক করলে টেবিলটি সাজানো হবে
আপনি পারবেন না (অন্তত এই মুহূর্তে না)। দুঃখিত!
দেখুন QGIS ডকুমেন্টেশন ও খুব শেষ লাইনটি নিচে স্ক্রোল করুন।
শেফিলের ডিবিএফটিকে এক্সেলের কাছে টানতে একটি খারাপ কাজ work এটি সেখানে বাছাই করুন এবং ফলাফলটি সংরক্ষণ করুন। বিকল্পভাবে আপনার শেফিলটি পোস্টজিআইএস বা স্পেশাললাইটে আমদানি করুন যেখানে আপনার আরও বাছাই কার্যকারিতা রয়েছে। মূলত, উন্নত বাছাইয়ের জন্য আপনাকে QGIS কে বাই-পাস করতে হবে।
@ স্যালভেস্টার স্নিকলির পরামর্শ অনুসারে, যদি আপনার ডেটা পোস্টডিসআইএস বা স্প্যাটিয়ালাইটের মতো কোনও আরডিবিএমএসে লোড করা হয় তবে আপনি আরডিবিএমএসে একটি ডাটাবেস ভিউ তৈরি করতে বিবেচনা করতে পারেন যা টেবিলার ডেটা প্রিন্ট করে, এবং তারপরে QGIS এ একটি স্তর হিসাবে পূর্বনির্ধারিত ভিউ লোড করতে পারে।