我需要找到一种方法来执行INSERT INTO table A
,但其中一个值是来自表B上的查找,请允许我说明。如何从另一个表中查找基于查找的值?
我有2个以下表:
表A:
A1: String
A2: Integer value coming from table B
A3: More Data
表B:A的
B1: String
B2: Integer Value
实施例行:{ “值”,101 ,MoreData} B的示例行:{“English”,101}
现在,我知道我需要将以下内容插入到{“Value2”,“English”,MoreData}中,但显然这不起作用,因为它期望第二列中的Integer不是单词“English”,所以我需要先在表B中进行查找。
事情是这样的:
INSERT INTO tableA (A1, A2, A3)
VALUES ("Value2", SELECT B2 FROM tableB where B1="English", MoreData);
显然,这并不工作,因为,是...
有什么建议?
似乎不工作...抱怨语法附近选择。如果这是标准方法,那么我必须在某处出现错字(现在正在查看)。 但是,我的一位朋友告诉我以下内容“在VALUES子句中,您只能指定变量或常量”。我认为他错了(必须有一种方法) – Shaitan00 2010-04-21 17:51:49
也许这是'select ...'部分的括号?特别是在SQL Server中,它们并不是必需的,可能也是非法的。不过,不知道其他服务器产品。 – 2011-01-30 11:28:21