mysql将计算结果添加到表列

时间:2012-07-25 15:59:02

标签: mysql

我有一个mysql表,其中包含薪水列。我可以使用:

计算列的18%和9%值

SELECT SALARY,SALARY * .09为'PS',SALARY * .12为'GS'FROM database.table;

  1. 如何根据sql语句的结果在此表上添加其他列?我的意思是我想在我的表格中添加“PS”和“GS”列。

  2. 如果在同一个表上可以这样做,我将如何通过sql脚本/语句基于sql语句的结果(包含PS和GS的新表)创建另一个表。

3 个答案:

答案 0 :(得分:1)

1)为了向表中添加其他列,必须使用alter命令。

ALTER TABLE database.table ADD PS varchar(10); ---- or whatever type of column
ALTER TABLE database.table ADD GS varchar(10); ---- or whatever type of column
UPDATE database.table SET PS = SALARY * .09, GS = SALARY * .12;

2)您必须先创建表格,然后将之前的查询插入其中。

CREATE TABLE database.secondtable (PS varchar(10), GS varchar(10));
INSERT INTO database.secondtable (PS,GS) VALUES(SELECT SALARY, SALARY * .09 as 'PS', SALARY * .12 as 'GS' FROM database.table);

答案 1 :(得分:0)

如果您希望GS位于同一个表中,则需要获取SQL查询值 你说了一个变量并用GS的另一个查询更新表

答案 2 :(得分:0)

对于问题1,您可以简单地将两个新字段添加到表中(我将不会在此处介绍,因为有关于如何添加字段的大量文档)。然后运行以下查询

UPDATE表SET PS = SALARY * .09,GS = SALARY * .12;

对于第二个问题,您可以根据任何查询的结果创建表格,如下所示:

CREATE TABLE table_name SELECT * FROM orig_table;

请注意,您可以在此处使用任何类型的SELECT语句。

这个东西真的很基本的SQL。这可以在MySQL文档中找到。