2016-08-16 8 views
-1

"Table_1"と "Table_2"という2つのテーブルがあります。 Table_2にはデータがありません。それは "City"と "Count of University"と呼ばれる列だけを持っています。 TABLE_1は次のとおりです。PL/SQLを使用してテーブルから別のテーブルにデータをエクスポートするには

City   University 
------------------------- 
Istanbul   ITU 
Istanbul  Bogazici Uni 
Istanbul   YTU 
Istanbul  Koc Uni 
Ankara   METU 
Ankara  Hacettepe Uni 
Ankara   Baskent Uni 
Trabzon   KTU 

私はPL/SQLを使用してTable_2へのtable_1から、大学の都市や回数をエクスポートします。したがって、Table_2は次のようになります。

City    Count of University 
    ------------------------------------- 
    Istanbul     4 
    Ankara     3 
    Trabzon     1 

どうすればいいですか?私はループを使用する必要があることを知っていますが、使用方法はわかりません。 私は使用可能なコードを習得したい。

+0

に読んでこのような何かを、試してみてください。 Sqlは 'table_2に挿入するだけで十分でしょう(都市別に選択すると、都市別にtable_1グループから数えます)' – Plirkee

+0

私はそれを知っています。しかし、私はPL/SQLを学びたいと思っています。それは私のメンターの要求です。私はインターンです。 – yilmazosmanfurkan61

+1

誰かにあなたのためにそれをやってもらうように頼んでいるのですが...。 –

答えて

1

私はあなたがこれを必要だと思う:

insert into table_2 SELECT City, count(1) total FROM table_1 group by City 
+0

私はそれを知っています。しかし、私はPL/SQLを学びたいと思っています。それは私のメンターの要求です。私はインターンです。 – yilmazosmanfurkan61

0

ここにPLSQLを使用する必要はありません。簡単なクエリを使用してこれを実現できます。これを説明するために、以下のクエリは、テーブル2のデータを生成します:あなたはそれを移入するには、以下のクエリを使用できるように

SELECT City, count(1) "Count of University" 
FROM table_1 
group by City; 

第二の部分は、それは、それを埋めるために。上記のため

insert into table_2 
SELECT City, 
count(1) total 
FROM table_1 
group by City 

PLSQL匿名ブロック:

declare 

begin 

Insert into table_2 
SELECT City, 
     count(1) 
FROM table_1 
group by City; 

commit;  

exception 
when others then 
dbms_output.put_line(sqlcode||'-'||sqlerrm); 
end; 
+0

私はそれを知っており、私はそれを行う方法を知っています。しかし、私はPL/SQLを学びたいと思っています。それは私のメンターの要求です。私はインターンです – yilmazosmanfurkan61

+0

私はpl/sqlコードが必要 – yilmazosmanfurkan61

+0

私のポストをチェックしてください。常に物事を単純にするのではなく、それを完了することができます – XING

0

こともあなたはそれのためPLSQLを必要としないcursorsproceduresfor loops

create or replace procedure copyTable is 
cursor source_table is 
    select city,count(*) as total from table_1 group by city; 
begin 
for item in source_table loop 
    insert into table_2(City,Count_of_University) values (item.city,item.total); 
end loop; 
end; 
+0

なぜあなたはBULKを使用して投稿を試みましたか? :-))) – XING

+0

@Raj_Te彼が言及したように、彼はインターンで、pl/sqlを学ぼうとしています。だから私は最初に単純なものから始める方が良いと思います。また、彼は* 'ループを使用する必要があります*。ただし、バルク収集で代替ソリューションを提供することは自由です。 – Plirkee

+0

さて、あなたは、カーソルを使っているインターンが、より良いスタート方法だと思います... !!!私は彼のメンターが上記を期待していたとは思っていません.. – XING

関連する問題