我正在尝试理解其他人编写的代码。表格closure
有3列,分别为ancestor
,descendant
和length
。
我想要的帮助是:
INSERT INTO table1 (ancestor, descendant, length)
SELECT a.ancestor, 12, a.length+1
FROM closure a
WHERE a.descendant=11;
通常我会在SELECT
语句之后得到列名。
答案 0 :(得分:6)
选择ancestor
,文字编号12
,然后选择length
的值加1。它对列descendant
等于11的行执行此操作。
没有什么可以阻止你在select语句中选择文字和算术。
如果您希望按应用代码中的列名访问值,则可能需要使用AS somename
(例如SELECT 12 as number, ...
)来命名最后两个