Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

LINQ:chỉ thêm mệnh đề where khi giá trị không rỗng

bạn có thể viết nó giống như

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

Theo cách này, phần thứ hai của điều kiện của bạn sẽ không được đánh giá nếu điều kiện đầu tiên của bạn được đánh giá là false

Cập nhật:
nếu bạn viết

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

và name1 là null phần thứ hai của điều kiện của bạn sẽ không được đánh giá vì hoặc điều kiện chỉ yêu cầu một điều kiện để trả về true

làm ơn hãy xem liên kết này để biết thêm chi tiết



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tham gia 100 bảng

  2. Giới thiệu các biểu thức bảng phổ biến trong SQL Server

  3. Không hỗ trợ OVER trong MS SQL Server 2005?

  4. varchar hoặc nvarchar

  5. Msg 203, Mức 16, Trạng thái 2, không phải là số nhận dạng hợp lệ