想知道如何使用select插入
问题描述:
INSERT INTO report (server_id, reported_id, reporting_id, admin_id)
SELECT s.server_id, rep.reported_id, ru.reporting_id, a.admin_id
FROM server s, reported_user rep, reporting_user ru, admin a
WHERE s.server_port = 'port'
AND rep.reported_steam_id = 'id'
AND ru.reporting_steam_id = 'id'
AND a.admin_id = '0'
正如您在上面看到的,我有一个查询从其他表中提取信息并将其插入到名为report的表中。我的问题是,原因是不是外键,我不知道如何使查询与让说:想知道如何使用select插入
INSERT INTO report (server_id, reported_id, reporting_id, admin_id, reason)
SELECT s.server_id, rep.reported_id, ru.reporting_id, a.admin_id
FROM server s, reported_user rep, reporting_user ru, admin a
WHERE s.server_port = 'port'
AND rep.reported_steam_id = 'id'
AND ru.reporting_steam_id = 'id'
AND a.admin_id = '0',
"TEST"; // <-- Does not work. Trying to insert a text string here.
答
试试这个
INSERT INTO report (server_id, reported_id, reporting_id, admin_id, reason)
SELECT s.server_id, rep.reported_id, ru.reporting_id, a.admin_id,"TEST"
FROM server s, reported_user rep, reporting_user ru, admin a
WHERE s.server_port = 'port'
AND rep.reported_steam_id = 'id'
AND ru.reporting_steam_id = 'id'
AND a.admin_id = '0'
+0
Thansk,只是想通了!这是对的 :) – Perelan
为'reason'你想添加的“测试”串吧? ? –
这是正确的。所有(server_id,reported_id,reporting_id和admin_id)是对其他表的引用,但“reason”不是。那是一个塔内的“报告” – Perelan