الانتقال إلى المحتوى

كيف يمكن دمج حقلين أو أكثر في حقل واحد


alsu_wh

Recommended Posts

ياجماعة عندي سؤال محيرني وحاولت مرارا وتكرار لكن بدون فائدة :rolleyes: :D .
مثلا اذا كان لدينا TABLE1 ويحوي حقول A,B ولدينا TABLE2 يحوي الحقل N كيف يمكن نقل محتوى الحقلين A,B من TABLE1 الى الحقل N في الجدول TABLE2 بواسطة INSERT STATEMENT
وان شاء الله ان السؤال واضح واللي يعرف لايبخل علينا ياشباب وتقبلوا تحياتي

رابط هذا التعليق
شارك

السلام عليكم ،،

لتنفيذ الامر المطلوب
انشأ جدول تجريبي كالاتي فى scott نسخه من جدول الdept

create table dept_new as select * from dept where deptno =888;

alter table dept_new modify dname varchar2(30);


المهم .. جرب هذا الأمر ..

insert into dept_new (deptno , dname ) select deptno , dname||','||loc   from dept ;


SQL>  select DEPTNO, DNAME         from dept_new ;

   DEPTNO DNAME
---------- ------------------------------
       10 ACCOUNTING,NEW YORK
       20 RESEARCH,DALLAS 30 SALES,CHICAGO
       40 OPERATIONS,BOSTON

تم تعديل بواسطة Amgad
رابط هذا التعليق
شارك

اجملت واحسن اخ امجد
ولى اضافة
لعمل جدول من جدول اخر بدون نسخ البيانات يمكن كتابة الامر كما يلى
create table his_emp as select * from emp where 1=2
فهذا الشركة لن تتحقق ابداً وبذلك يتم انشاء الجدول دون نسخ اى بيانات فيه
مع تحياتى

رابط هذا التعليق
شارك

زيادة على رد زميلنا السابق تستطيع أن تستخدم الكود التالي

set serveroutput on ;
declare
cursor c1 is select a||b  from emp; vn table1.n%type;
begin open c1;
loop
fetch c1 into vn; insert into table1 values (vn);
exit when c1%notfound;
close c1;
commit;
end loop;
end;
/
[sql]

أرجو أن أكون قد أوضحت المطلوب
رابط هذا التعليق
شارك

هذا المثال منقول من كتب اوراكل

Example of Merging Rows

MERGE INTO copy_emp c
USING employees e
ON (c.employee_id = e.employee_id)
WHEN MATCHED THEN
UPDATE SET
c.first_name = e.first_name,
c.last_name = e.last_name,
c.email = e.email,
c.phone_number = e.phone_number,
c.hire_date = e.hire_date,
c.job_id = e.job_id,
c.salary = e.salary,
c.commission_pct = e.commission_pct,
c.manager_id = e.manager_id,
c.department_id = e.department_id
WHEN NOT MATCHED THEN
INSERT VALUES(e.employee_id, e.first_name, e.last_name,
e.email, e.phone_number, e.hire_date, e.job_id,
e.salary, e.commission_pct, e.manager_id,
e.department_id);



Merging Rows

تم تعديل بواسطة salama11433
رابط هذا التعليق
شارك

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية