ওরাকলে দ্বৈত সারণীটি কী?


229

আমি এই টেবিলটির উল্লেখ লোকদের শুনেছি এবং এটি কী তা সম্পর্কে নিশ্চিত ছিল না।


2
asktom.oracle.com/pls/asktom/… দ্বৈত সম্পর্কে বিশদ
শ্রীনিভি

দ্বৈত Asktom.oracle.com/pls/asktom/… সম্পর্কে সেরা উত্তর এখানে রয়েছে , লোকেরা উপরের মন্তব্য লিঙ্কটিতে বেশি মনোযোগ দিচ্ছে না সে কারণেই আমি এখানে মন্তব্য করছি .. এটি একবার দেখুন, আপনি দুঃখ প্রকাশ করবেন না
বরুণ

উত্তর:



79

এটি একটি ডামি টেবিল যার মধ্যে একটি উপাদান রয়েছে। এটি দরকারী কারণ ওরাকল বিবৃতি পছন্দ করে না

 SELECT 3+4

আপনি এই সীমাবদ্ধতাটি লিখে কাজ করতে পারেন

 SELECT 3+4 FROM DUAL

পরিবর্তে.


70

উইকিপিডিয়া থেকে

ইতিহাস

অভ্যন্তরীণ দৃশ্যে যোগদানের জন্য একটি সারণী সরবরাহ করার জন্য অরাকল কর্পোরেশনের চক ওয়েইস দ্বারা ডুয়াল টেবিলটি তৈরি করা হয়েছিল:

আমি ওরাকল ডেটা অভিধানে অন্তর্নিহিত অবজেক্ট হিসাবে ডুয়াল টেবিলটি তৈরি করেছি। এটি কখনই নিজেকে দেখার কথা ছিল না, বরং এর পরিবর্তে এমন একটি দৃষ্টিভঙ্গির অভ্যন্তরে ব্যবহৃত হয়েছিল যা প্রত্যাশা করা হয়েছিল। ধারণাটি ছিল যে আপনি ডুয়াল টেবিলটিতে যোগদান করতে পারেন এবং আপনার টেবিলে প্রতি এক সারিতে ফলাফলের জন্য দুটি সারি তৈরি করতে পারেন। তারপরে, গ্রুপ দ্বারা ব্যবহার করে, ফলাফলের যোগটিকে সংক্ষিপ্ত করে ডেটা পরিমাণ এবং আইএনডিএক্স সীমা (গুলি) এর পরিমাণ সঞ্চয় করতে পারে show DUAL নামটি কেবল একটি থেকে এক জোড়া সারি তৈরি করার প্রক্রিয়াটির জন্য উপযুক্ত বলে মনে হয়েছিল। 1

এটি উপরের থেকে স্পষ্ট নাও হতে পারে, তবে মূল ডুয়াল টেবিলটিতে এটিতে দুটি সারি ছিল (সুতরাং এটির নাম)। আজকাল এটির কেবল একটি সারি রয়েছে।

অপ্টিমাইজেশান

ডুয়াল মূলত একটি টেবিল ছিল এবং ডুয়াল থেকে নির্বাচন করার সময় ডাটাবেস ইঞ্জিনটি টেবিলে ডিস্ক আইও সঞ্চালন করে। এই ডিস্ক আইওটি সাধারণত যৌক্তিক আইও (শারীরিক ডিস্ক অ্যাক্সেসের সাথে জড়িত না) হওয়ায় সাধারণত ডিস্ক ব্লকগুলি সাধারণত মেমরিতে ক্যাশে থাকে। এর ফলে ডুয়াল টেবিলের বিপরীতে প্রচুর পরিমাণে যৌক্তিক আইও।

ওরাকল ডাটাবেসের পরবর্তী সংস্করণগুলি অপ্টিমাইজ করা হয়েছে এবং ডুয়াল টেবিলটি প্রকৃতপক্ষে উপস্থিত থাকলেও ডাটাবেসটি আর ডুয়াল টেবিলটিতে শারীরিক বা যৌক্তিক আইও সম্পাদন করে না।


21

আমি মনে করি এই উইকিপিডিয়া নিবন্ধটি স্পষ্ট করতে সহায়তা করতে পারে।

http://en.wikipedia.org/wiki/DUAL_table

ডুয়াল টেবিলটি একটি বিশেষ এক-সারি টেবিল যা সমস্ত ওরাকল ডাটাবেস ইনস্টলেশনে ডিফল্টরূপে উপস্থিত থাকে। এটি সিডসেট বা ইউজারের মতো সিউডোকলম নির্বাচন করতে ব্যবহারের জন্য উপযুক্ত, টেবিলটিতে ডামি নামে একটি একক VitcAR2 (1) কলাম রয়েছে যার "X" মান রয়েছে


10

এটি ওরাকলে বিশেষ টেবিল। আমি প্রায়শই এটি গণনা বা সিস্টেম ভেরিয়েবলগুলি পরীক্ষা করার জন্য ব্যবহার করি। উদাহরণ স্বরূপ:

  • Select 2*4 from dual গণনার ফলাফল মুদ্রণ করে
  • Select sysdate from dual সার্ভারের বর্তমান তারিখ মুদ্রণ করে।

4

সিউডো টেবিলের মতো আপনি বিপরীতে কমান্ড চালাতে পারেন এবং সিসডেটের মতো ফলাফল পেতে পারেন। এছাড়াও আপনাকে ওরাকল আপ রয়েছে কিনা তা পরীক্ষা করতে এবং এসকিএল সিন্টেক্স ইত্যাদি পরীক্ষা করতে সহায়তা করে


4

কেবল 1 টি সারি এবং 1 কলাম সহ ওরাকলে একটি ইউটিলিটি টেবিল। এটি বেশ কয়েকটি পাটিগণিত ক্রিয়াকলাপ সম্পাদন করতে ব্যবহৃত হয় এবং সাধারণত যেখানে একটিকে একটি পরিচিত আউটপুট তৈরি করা প্রয়োজন সেখানে ব্যবহার করা যেতে পারে।

দ্বৈত থেকে নির্বাচন করুন;

"DUMMY" নামে একটি একক কলাম এবং এখানে প্রদর্শিত হিসাবে "X" এর মান সহ একটি একক সারি দেবে:

DUMMY
----- 
X


2

ডুয়াল টেবিলটি একটি বিশেষ এক-সারি টেবিল যা সমস্ত ওরাকল ডাটাবেস ইনস্টলেশনে ডিফল্টরূপে উপস্থিত থাকে। এটি সিডসেট বা ব্যবহারকারী হিসাবে সিউডোকলম নির্বাচন করার জন্য উপযুক্ত

সারণীতে DUMMY নামে একটি একক VARCHAR2 (1) কলাম রয়েছে যার "X" এর মান রয়েছে

আপনি এটি সম্পর্কে সমস্ত http://en.wikedia.org/wiki/DUAL_table এ পড়তে পারেন


1

ডুয়াল পিএল / এসকিউএল বিকাশে প্রয়োজনীয় যা কেবল এসকিউএল-তে উপলব্ধ using

যেমন

DECLARE
x XMLTYPE;
BEGIN
SELECT xmlelement("hhh", 'stuff')
INTO x
FROM dual;
END;

0

প্রত্যাবর্তন 1 খালি সারি থেকে এটি রাখা কোনও অবজেক্ট। উদাহরণস্বরূপ: দ্বৈত থেকে 1 নির্বাচন করুন; ফেরত 1

দ্বৈত থেকে 21 + 44 নির্বাচন করুন; 65 ফেরত দেয়

দ্বৈত থেকে পূর্ববর্তী [ক্রম] নির্বাচন করুন; ক্রম থেকে পরবর্তী মান প্রদান করে।


0

ডুয়াল আমরা সাধারণত সিকোয়েন্স থেকে পরবর্তী নম্বর পাওয়ার জন্য ব্যবহার করি।

সিনট্যাক্স: ডুয়াল থেকে 'সিকোয়েন্স_নাম' নির্বাচন করুন EXT

এটি এক সারিটির একটি কলাম মান (NEXTVAL কলামের নাম) প্রদান করবে।


1
11 গ্রাম থেকে এটি প্রয়োজনীয় নয়। সিকোয়েন্সগুলি স্থানীয়ভাবে পিএল / এসকিউএল এ ব্যবহার করা যায়।
জন হেলার

0

আরেকটি পরিস্থিতির প্রয়োজন যা select ... from dual হ'ল আমরা যখন বিল্ট ইন DBMS_METADATA.GET_DDLফাংশনটি ব্যবহার করে বিভিন্ন ডাটাবেস অবজেক্টের (যেমন টেবিল, ফাংশন, ট্রিগার, প্যাকেজ) কোড (ডেটা সংজ্ঞা) পুনরুদ্ধার করতে চাই :

select DBMS_METADATA.GET_DDL('TABLE','<table_name>') from DUAL;

select DBMS_METADATA.GET_DDL('FUNCTION','<function_name>') from DUAL;

সত্য যে আজকাল আইডিইগুলি কোনও সারণির ডিডিএল দেখার ক্ষমতা দেয় তবে এসকিউএল প্লাসের মতো সহজ পরিবেশে এটি সত্যই কার্যকর হতে পারে।

সম্পাদনা

আরও সাধারণ পরিস্থিতি: মূলত, যখন আমাদের কোনও স্ট্যান্ডার্ড এসকিউএল স্টেটমেন্টের অভ্যন্তরে কোনও পিএল / এসকিউএল পদ্ধতি ব্যবহার করা প্রয়োজন হয় বা আমরা যখন কমান্ড লাইন থেকে কোনও পদ্ধতি কল করতে চাই:

select my_function(<input_params>) from dual;

উভয় রেসিপি জোশ জুনাও এবং ম্যাট অ্যারেনার লেখা 'ওরাকল পিএল / এসকিউএল রেসিপি' বই থেকে নেওয়া হয়েছে


0

ডিইউএল বিশেষ এক সারি, সমস্ত ওরাকল ডাটাবেসে ডিফল্টরূপে একটি কলামের সারণি উপস্থিত। ডুয়ালের মালিক এসওয়াইএস।

ডুয়াল হ'ল একটি টেবিল যা স্বয়ংক্রিয়ভাবে ওরাকল ডেটাবেস ডেটা ফাংশন সহ তৈরি করা হয়। এটি সর্বদা অপারেটিং সিস্টেম ফাংশনগুলি পেতে (যেমন তারিখ, সময়, গাণিতিক এক্সপ্রেশন ইত্যাদি) ব্যবহার করতে ব্যবহৃত হয়)

SELECT SYSDATE from dual;  
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.