sql >> データベース >  >> RDS >> Oracle

OracleSQLのwhere条件の動的番号

    試してみてください

    select something
      from somewhere
     where someColumn in (select regexp_substr('abc-def-xyz','[^-]+', 1, level) from dual
                         connect by regexp_substr('abc-def-xyz', '[^-]+', 1, level) is not null);
    

    一般化するには(フィールドが「-」で区切られていることを考慮して)

    select something
      from somewhere
     where someColumn in (select regexp_substr(variable,'[^-]+', 1, level) from dual
                         connect by regexp_substr(variable, '[^-]+', 1, level) is not null);
    

    基本的に、サブクエリの出力を以下に示します-

      SQL> select regexp_substr('abc-def-xyz','[^-]+', 1, level) value from dual
          connect by regexp_substr('abc-def-xyz', '[^-]+', 1, level) is not null;
    
    VALUE                            
    -------------------------------- 
    abc                              
    def                              
    xyz  
    


    1. mysql_fetch_array()は、パラメーター1がリソースの問題であると想定しています

    2. PHPサインアップシステムが機能しない(phpmyadmin、wampserver)

    3. 自動送信がデータベースにデータを投稿していません

    4. MySQLの複数のサブクエリとクエリ全体