• ベストアンサー

文字列の連結

文字列の連結 select * from test where testcolum=変数名 といった感じで、文字列と変数を連結したいのですがやり方がわかりません。 declare cdata varchar2(20); begin cdata:='sample'; 'select * from test where testcolum=' || cdata; end; 上のように、select文を動的に変更して実行したいのです。 よろしくお願いします。 /

質問者が選んだベストアンサー

  • ベストアンサー
  • yamada_g
  • ベストアンサー率68% (258/374)
回答No.1

動的SQLを使えばいいです。 動作確認はしていませんが、 declare cdata varchar2(20); testrec test%rowtype; begin cdata:='sample'; execute immediate 'select * from test where testcolum=' || cdata into testrec; end; / みたいな感じです。 http://otndnld.oracle.co.jp/document/products/oracle10g/102/doc_cd/appdev.102/B19248-02/adfns_dynamic_sql.htm

nanashitar
質問者

お礼

回答ありがとうございます。 やりたかったことは正にこの通りです。 知らなかったとはいえ、初歩的なことを聞いてしまい申し訳ありません。