2017-04-26 15 views
5

QoreのSqlUtilのWhereハッシュで列を複数回使用する方法はありますか。QoreのSqlUtilのwhereハッシュで同じ列を複数回使用する方法

例SQL:ここcolname in (...) and colname not in (...)

は、ハッシュは次のようになり場所:もちろん

hash sh = ('where': (
       'colname': op_in(...), 
       'colname': op_not(op_in(...)), 
     )); 

同じキーがハッシュで複数回使用することはできません。

答えて

6

これが可能である - 参照:ドキュメントからhttps://docs.qore.org/current/modules/SqlUtil/html/sql_operations.html#where_clauses

を:

固有の番号と同様にコロンで列指定の接頭辞、複数回where句よりも列を参照します次の例:

hash w = ("0:created": op_ge(mindate), "1:created": op_lt(maxdate)); 

(結腸と共に)上記の例のように数値プレフィックスが除去される属クエリを実行し、生成されたクエリで同じ列名が複数回表示されるようにするためだけに使用されます。

hash sh = (
    "where": (
     "0:colname": op_in(...), 
     "1:colname": op_not(op_in(...)), 
    ), 
); 

あなたの例は次のようになります

関連する問題