请帮我优化嵌套视图。在下面的查询中使用了两个视图,这些视图的性能非常慢。
/trunk/ProjectDir:500
答案 0 :(得分:0)
您是否无法移除where子句,删除其中一个视图,并在添加where子句的剩余视图上执行选择? (原始问题有2个观点)
答案 1 :(得分:-1)
请尝试下面的内容,
<强>查看:强>
根据我的理解,如果可能的话,您可以在主查询中替换LENER OUTER JOIN和INNER JOIN,以及视图定义。
根据我的理解,下面是要尝试的查询。请分享有关表结构,索引,执行计划以及查询期望的完整输出的更多详细信息。
try{
chge=jTextField27.getText();
cash=jTextField4.getText();
String SQLL = "update customer (Cash,Chnge) values ('" + cash + "','" + chge + "') where Room = ? and Name = ?;";
Dbase5 = conn.prepareStatement (SQLL);
Dbase5.setString(1,jTextField1.getText());
Dbase5.setString(2,jTextField2.getText());
int b = Dbase5.executeUpdate();
////////MOVE TO HISTORY
String SQL = "INSERT INTO history select * from customer where Room = ? and Name = ?";
Dbase = conn.prepareStatement (SQL);
Dbase.setString(1,jTextField1.getText());
Dbase.setString(2,jTextField2.getText());
int rs=Dbase.executeUpdate();
///////MOVE TO HISTORY
String MSQL = "delete from customer where Room=? and Name=?";
Dbase1 = conn.prepareStatement (MSQL);
Dbase1.setString(1,jTextField1.getText());
Dbase1.setString(2,jTextField2.getText());
boolean s = Dbase1.execute();
this.dispose();