MYSQL:帮助快速更新

时间:2017-07-10 14:11:39

标签: mysql sql

我需要一些帮助才能在我的MySQL桌面上快速更新

Table 1     
id | value  
1    0  
2    0  
3    0 ...

Table 2  
t1_id | t2_id  
1       2  
1       3  
3       5 ...

表1中有大约150,000行,表2中大约有1,300行。当表1中存在t1.id时,我需要设置t1.value = 1。

update table1 t1, table2 t2
set value = 1
where t1.id = t2.id;

如果没有一些不同的参数,它会为每个id做很多次,这使得更新所有t1行的速度变慢。

任何帮助都会很乐意接受。

2 个答案:

答案 0 :(得分:1)

怎么样:

UPDATE t1
   SET t1.value = 1
  FROM table_t1 t1
 WHERE EXISTS (SELECT 1 
                 FROM table_t2 t2 
                WHERE t2.id = t1.id
               )

答案 1 :(得分:0)

怎么样:

public OrderFormReport(Order pOrder, List<OrderDetail> pOdList)
{
     InitializeComponent();
     order = pOrder;
     odList = pOdList;

     txtOrderNote.Value = order.Notes;
     txtTotal.Value = order.Total;
     table1.DataSource = odList;
}