mySQL 查询:如何使用 UNION 插入?

2021-12-19 00:00:00 union select mysql

我对 mySQL:s union 函数有点陌生,至少在对它们进行插入时是这样.根据网上找到的一个例子,我得到了以下工作:

I am kind of new to mySQL:s union functions, at least when doing inserts with them. I have gotten the following to work based upon a example found on the net:

INSERT INTO tableOne(a, b)
SELECT a, $var FROM tableOne
WHERE b = $var2
UNION ALL SELECT $var,$var

好的,这没什么奇怪的.但是当我想在数据库中插入第三个与 Select 的逻辑无关的值时会发生什么?

Ok, nothing strange about that. But what happens when I want to insert a third value into the database that has nothing to do with the logic of the Select being done?

喜欢:INSERT INTO tableOne(a, b, c)

这怎么可能?

推荐答案

您也可以选择"字面值:

You can "select" literal values too:

mysql> select 'hello', 1;
+-------+---+
| hello | 1 |
+-------+---+
| hello | 1 |
+-------+---+
1 row in set (0.00 sec)

因此,您也可以在 INSERT INTO ... SELECT FROMUNION 中使用它.

Hence, you can also use that in INSERT INTO ... SELECT FROM and UNIONs.

INSERT INTO someTable (a, b, c) VALUES
SELECT id, name, 5
FROM someOtherTable
UNION
SELECT id, alias, 8
FROM anotherTable

相关文章