gpt4 book ai didi

Java SQL从一个表动态更新另一个表而无需id

转载 作者:太空宇宙 更新时间:2023-11-04 13:48:26 26 4
gpt4 key购买 nike

我有两个这样的表:

Table 1:
Description -- Price
Apple 10
Wine 20
Coffe 5

Table 2:
Description -- Price -- Number
Pineapple 25 1
Coke 5 1
Orange Juice 8 2
Milk 10 3

我希望表 1 看起来像这样 ():

Description -- Price 
Pineapple 25
Coke 5
Orange Juice 8
Milk 10

我已经尝试过这个,但我只得到选择查询返回的最后一个值(导致所有行都具有相同的值)。

PreparedStatement ps = con.prepareStatement("update Table1 set Description=?, Price=? WHERE  (DATEPART(year, date) = "+arraydate[0]+"\n"+ 
"AND DATEPART(month, date) ="+arraydate[1]+"\n"+
"AND DATEPART(day, date) ="+arraydate[2]+")");
try {
st=con.createStatement();
ResultSet rs= st.executeQuery("select Description,Price from Table2 where number in(35,36)");
while(rs.next()){
String desc=rs4.getString("Description");
Double price=rs4.getDouble("Price");

ps.clearParameters();
ps.setString(1,desc);
ps.setDouble(2,price);
ps.executeUpdate();
}
}
catch(Exception ex)
{ex.printStackTrace();}

有人可以帮忙吗?非常感谢。

最佳答案

不确定您实际上想要做什么......但是将一个表基础更新到另一个表基础上很容易:

Update A
Set A.Price = B.Price
FROM Table1 as A
INNER JOIN Table2 AS B
ON A.Name = B.Name
and A.Description = B.Description

如果这不能回答您的问题,请举例说明您期望查询之前和之后这两个表的外观。

关于Java SQL从一个表动态更新另一个表而无需id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30577724/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com