我想创建如下的Sql查询:
SELECT *
FROM `post_sale`
WHERE id = 820705
UNION
SELECT id
INTO OUTFILE 'C:/xampp/htdocs/ttv.php'
FROM post_sale
但是它表示使用的SELECT
语句之类的错误具有不同的列数。
我的问题是我想从第一个语句中选择*,只从第二个联合选择状态中选择一个..
任何帮助!
答案 0 :(得分:1)
a UNION ALL b
请求两个结果集并连接它们的行。 UNION
执行相同的操作,但会删除结果集中重复的行。为此,结果集a
和b
必须具有相同的列数,并且列必须是相同类型或可隐式地转换为相同类型。
所以,SELECT * FROM table UNION SELECT val
毫无意义。
此外,SELECT id
没有任何意义,除非您添加FROM
子句,告知在哪里找到此id
列
你可能想要一个带有额外COLUMN的结果集,比如这个
SELECT *, id FROM post_sale WHERE id = constant
将您想要的数据项组合到特定行中。它不是UNION,但它可以做你想要的。