在mysql中使用SN从表中删除许多行

时间:2018-07-30 08:45:27

标签: mysql sql xampp localhost sql-delete

我只是具有查询基本知识的IT支持人员。我想使用ac_serial_number从我的表中删除许多序列号行的表条目。

当前,我正在使用

   func getProduct(productId: String, callback: @escaping (String) -> () ){

        Transport.sharedInstance.getProduct(productId: productId) { (data, err) in

            if let _ = err{

            }else{
                if let dt = data as? String{
                    let pro = Mapper<SubCategoryProducts>().map(JSONString: dt)
                    let com = ComboData()
                    com.price = pro?.Price ?? 0
                    com.type = pro?.type ?? ""
                    com.amount = pro?.quantity ?? ""

                    if (pro?.combodata == nil) {
                         pro?.combodata?.append(com)
                    } else if ((pro?.combodata?.contains(where: {$0.type == pro?.type})))! {

                    } else {

                        pro?.combodata?.append(com)
                    }
                    self.arrayForCombo.removeAll()
                    pro?.combodata?.forEach({ (com) in
                        let str = "\(com.amount) " + "\(com.type)" + "    -    " +  "₹ \(com.price)"
                        self.arrayForCombo.append(str)
                    })
                    callback(self.arrayForCombo[0])
                }
            }
        }
    }

但是我有大约1000个要删除的序列号。我的方法将需要几个小时。

您能告诉我有效删除吗?

1 个答案:

答案 0 :(得分:1)

如果只有1000左右?

然后,您可以使用一个具有IN条件的DELETE来完成此操作。

例如:

DELETE FROM asset_comparison 
WHERE ac_serial_number IN (
 'SGH511XXXX'
,'6CM451XXXX'
-- Add more here
);