根据与另一个表相关的某些条件更新一个表(MySQL)

时间:2017-11-23 09:38:59

标签: mysql database datatables

问题是: "将德里至孟买航班的航空公司票价提高10%"

我知道一种方法是检查相应的航班不是我自己并在查询中使用它但我希望查询只是根据表中给出的列。我尝试了以下两个都失败了: 1)更新票价设置票价= 1.1 *票价,其中flights.start ='德里'和flights.end ='孟买';

2)更新票价设置票价= 1.1 *票价在哪里(航班自然加入票价).start ='德里'和(航班自然加入票价).end ='孟买';

请帮忙

航班表包含列号航班号,开始,结束,noofflights,noofstops

票价表有flightno,票价,航空公司,税收

2 个答案:

答案 0 :(得分:1)

SQL下面可能会帮助您进行参考

UPDATE FLIGHT FL INNER JOIN FARES FR 
ON FL.flightno = FR.flightno SET FR.fare = (1.1 * FR.FR) 
WHERE FL.start = 'Delhi' AND FL.end = 'Mumbai' ;

答案 1 :(得分:0)

不确定这是不是你想要的:

Update fares fs
LEFT JOIN flight f on f.flightno = fs.flightno
SET fare = 1.1 * fare
WHERE f.start='Delhi' and f.end='Mumbai';
相关问题