通过查询自动分配列

时间:2018-06-25 05:40:12

标签: mysql sql

本质上,我希望一列在插入时根据另一个表中的值为其自身提供一个值。

@Controller
public class HomeController {

    @RequestMapping("/home")
    public String goHome()
    {
        return "welcome";//if the suffix is jsp
        //return "welcome.jsp"; // if do not have suffix in your spring configuration file
    }
}

在插入时,debug_id由自动增量设置,但是我也希望通过类似version_numbers (table) (id, ...): 1, 2, 3, 4, 5, 6 application_debug (table) (debug_id, ver_id ...) 的查询来设置ver_id

在此示例中,当插入ver_id = SELECT MAX(id) FROM Version_Numbers时,我希望使用存储在application_debug中的最大ID填充ver_id。我知道可以在多个语句中完成此操作,但是想知道是否有一种方法可以通过查询插入来评估列的默认值。

1 个答案:

答案 0 :(得分:0)

您好,您可以使用以下选项:

insert into application_debug(ver_id) select max(id) from version_numbers;

如果要将非verions_numbers的任何静态值插入到application_debug中,则可以编写如下查询:

insert into application_debug(ver_id,col2) select max(id),'val2' from version_numbers;