[英]Multiple returend values of SQL sub-query
我正在使用PostgreSQL 9.1,我写了以下SQL语句:
INSERT INTO "Tracking" VALUES
((SELECT "studentID" FROM "Student" WHERE "studentClass"='2'),false,4,false);
问题是子查询:
SELECT "studentID" FROM "Student" WHERE "studentClass"='2'
返回一个以上的值,并且应该这样做(我想对子查询的每个返回值执行主查询),但是通过这种方式将不会执行查询。 任何想法?
尝试这个:
INSERT INTO "Tracking"
SELECT "studentID",false,4,false
FROM "Student" WHERE "studentClass"='2'
然后使用INSERT INTO... SELECT
语句
INSERT INTO "Tracking"
SELECT "studentID" , false , 4 , false
FROM "Student"
WHERE "studentClass" = '2'
确保此语句的一件事是确保表Tracking
仅包含4列,否则您将获得与提供的值不匹配的列数。 例如,如果您有多于4列,则在要保存这些值的INSERT
子句上定义列名。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.