聯(lián)表查詢(xún) 列名無(wú)效
用到聯(lián)表查詢(xún)SQL語(yǔ)句時(shí) 最后運(yùn)行輸出總是報(bào)錯(cuò) 說(shuō)s.Jprice列名無(wú)效?? 但這條語(yǔ)句在sqlserver中是可以執(zhí)行的
到底是怎么回事呀? 求解? 謝謝各位大神
Jprice,Mprice是SPinfo表中的進(jìn)價(jià)和賣(mài)價(jià)? xscout是XSjilu表中的銷(xiāo)售數(shù)量? iid是兩個(gè)表中的主外鍵關(guān)聯(lián)
public void SelectSPpriceAll() throws SQLException {
?? ??? ?float Jprice;
?? ??? ?float Mprice;
?? ??? ?int xscout;
?? ???? float sum = 0;
?? ??? ?Connection con = Database.getCon();
?? ??? ?Statement sta = con.createStatement();
?? ??? ?String sql = "select SUM((s.Mprice-s.Jprice)* x.xscout) from SPinfo s,XSjilu x where s.iid=x.iid";
?? ??? ?ResultSet res = sta.executeQuery(sql);
?? ??? ?while (res.next()) {
?? ??? ??? ?Jprice = res.getFloat("Jprice");
?? ??? ??? ?Mprice = res.getFloat("Mprice");
?? ??? ??? ?xscout = res.getInt("xscout");
?? ??? ??? ?sum += (Mprice - Jprice) * xscout;
?? ??? ??? ?System.out.println("所有商品的盈利總額為:" + sum + "元");
?? ??? ?}
?? ?}
2017-03-14
查詢(xún)所得的結(jié)果集即是價(jià)錢(qián)總和了,直接獲取就行
如果要按照你寫(xiě)的,那么就需要把查詢(xún)語(yǔ)句改為
select s.Mprice,s.Jprice,x.xscout
from SPinfo as s,XSjilu as x
where s.iid = x.iid;