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

trong đó 1 =1 câu lệnh

Đó thường là khi mọi người xây dựng các câu lệnh SQL.

Khi bạn thêm and value = "Toyota" bạn không phải lo lắng về việc liệu có một điều kiện trước đó hay chỉ là Ở ĐÂU. Người tối ưu hóa nên bỏ qua nó

Không có ma thuật, chỉ thực tế

Mã mẫu:

commandText = "select * from car_table where 1=1";

if (modelYear <> 0)     commandText += " and year="+modelYear
if (manufacturer <> "") commandText += " and value="+QuotedStr(manufacturer)
if (color <> "")        commandText += " and color="+QuotedStr(color)
if (california)         commandText += " and hasCatalytic=1"

Nếu không, bạn sẽ phải có một tập hợp logic phức tạp:

commandText = "select * from car_table"
whereClause = "";
if (modelYear <> 0)
{
   if (whereClause <> "") 
      whereClause = whereClause + " and ";
   commandText += "year="+modelYear;
}
if (manufacturer <> "")
{    
   if (whereClause <> "") 
      whereClause = whereClause + " and ";
   commandText += "value="+QuotedStr(manufacturer)
}
if (color <> "")
{
   if (whereClause <> "") 
      whereClause = whereClause + " and ";
   commandText += "color="+QuotedStr(color)
}
if (california)
{
   if (whereClause <> "") 
      whereClause = whereClause + " and ";
   commandText += "hasCatalytic=1"
}

if (whereClause <> "")
   commandText = commandText + "WHERE "+whereClause;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tạo bản sao lưu vật lý của Cơ sở dữ liệu MariaDB hoặc MySQL của bạn

  2. Hiểu các giao dịch mysql pdo

  3. Dự phòng &Dự phòng trên Amazon RDS

  4. Lỗi khi tạo bảng:Bạn gặp lỗi trong cú pháp SQL của mình gần 'order (order_id INT UNSIGNED NOT NULL AUTO_INCREMENT, user_id' ở dòng 1

  5. Cách định dạng số trong MySQL