带有 SELECT 的 SQL INSERT:自定义列值
通常,您会在 SELECT
查询中使用 INSERT
语句来用数据填充表。 但是,如果您需要在修改特定列的值时插入 SELECT
查询中的值该怎么办?
在插入期间修改列值
这很容易实现。 假设您想要从现有 courses
表插入数据,但想要使用特定值覆盖 gid
列:
原始方法(无需定制):
<code class="language-sql">INSERT INTO courses (name, location, gid) SELECT name, location, gid FROM courses WHERE cid = $cid</code>
自定义插入:
<code class="language-sql">INSERT INTO courses (name, location, gid) SELECT name, location, 1 -- gid is now always 1 FROM courses WHERE cid = 2</code>
如您所见,通过将 gid
列选择替换为常量值(在本例中为 1
),您可以直接控制所有插入行的 gid
值。 只需将 1
替换为您想要的值,并根据需要调整 WHERE
子句 (cid = 2
) 以选择适当的源行。 这提供了填充表格的灵活性,同时保持对各个列值的控制。
以上是我可以在使用 SELECT 的 SQL INSERT 过程中自定义列值吗?的详细内容。更多信息请关注PHP中文网其他相关文章!