2

という名前のテーブルとSIRKET、 および という名前の 2 つの列がsirket_unvanありcust_idます。sirket_unvan15 文字を超える単語を検索したい。

私が使う

select sirket_unvan from SIRKET where cust_id=0

しかし、15 文字を超える単語を見つけるにはどうすればよいでしょうか。その言葉は別のコラムで報告したい。手順を書くべきだと思います。また、1 行に 15 文字を超える 2 つ以上の単語を含めることができます。

 cust_id |sirket_unvan
---------+----------------------------------------------
  0      | sdsd Afdfdgfdgdgdg fdgfgfgf fgfgf           
  0      | dfdfds dffd dsfdffggfdgfdgfdgfgdgdfgd fdfdfd
  0      | sdfsdfsdf dsfdsfdsfdsdgfgfgf               
  0      | sdfsdfsd sdfsdfsdf
  1      | sdfsdfsdf dsfdsfdsfdsdgfgfgf 
  2      | dsfdsfs sdfsdfsdgfhfh

この出力が欲しい

   cust_id   | sirket_unvan                                |longerthan15characterwords
    ---------+---------------------------------------------+---------------------------
      0      | sdsd Afdfdgfdgdgdg fdgfgfgf fgfgf           | Afdfdgfdgdgdg
      0      | dfdfds dffd dsfdffggfdgfdgfdgfgdgdfgd fdfdfd| dsfdffggfdgfdgfdgfgdgdfgd
      0      | sdfsdfsdf dsfdsfdsfdsdgfgfgf                | dsfdsfdsfdsdgfgfgf
4

3 に答える 3

1

これを試して:

select cust_id , sirket_unvan, sirket_unvan1 from (
SELECT DISTINCT cust_id ,
          SIRKET_UNVAN,
          REGEXP_SUBSTR(SIRKET_UNVAN , '[[:alpha:]]+', 1, LEVEL) SIRKET_UNVAN1
FROM MY_TABLE9
CONNECT BY REGEXP_SUBSTR(SIRKET_UNVAN , '[[:alpha:]]+', 1, LEVEL)  IS NOT NULL)
WHERE LENGTH(SIRKET_UNVAN1) > 15;
于 2013-07-30T02:55:33.727 に答える