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

LINQ:値が null でない場合にのみ where 句を追加する

    のように書くことができます

    IQueryable query = from staff in dataContext.Staffs;
    query = from staff in query where (name1 != null && staff.name == name1);
    

    このように、最初の条件が false と評価された場合、条件の 2 番目の部分は評価されません

    更新:
    書いたら

    IQueryable query = from staff in dataContext.Staffs;
        query = from staff in query where (name1 == null || staff.name == name1);
    

    name1 が null であり、条件の 2 番目の部分は評価されません。or 条件が true を返すには 1 つの条件しか必要としないためです

    こちらのリンク をご覧ください 詳細については



    1. データ集約型のPL/SQLアプリケーションを(単体)テストする方法

    2. Postgresqlリモートアクセスホストのpg_hba.confエントリがありません

    3. JMeterJDBCプール構成

    4. 同じタイトルの複数の行または結果を組み合わせて、PHPおよびMySQLでドロップダウンメニューを形成します