如何使用insert 才能达到联合功能??

bigsir 2003-06-03 03:59:14
t1:
id name
1 a
2 b

t2
anotherID id
1 2
2 1

我想在t2中添加 t1.name=a 的id,我用以下结构无法实现
INSERT T1
(anotherID _ID,id)
1,
SELECT id
FROM [T2]
WHERE [T2].id= 'a'

多谢多谢,还有请问那种declare@ something varchar 的语言那里有详解
我适用vc的,这个不熟悉
...全文
28 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
bigsir 2003-06-04
  • 打赏
  • 举报
回复
多谢诸位老大!
第一个问题按照小黑的已经解决了,大力的因为嵌套,sql句法错误
第2个大力写的很清楚(老大帮了我好多次了~_~)

再次多谢!
saiyang0312 2003-06-04
  • 打赏
  • 举报
回复
学习
pengdali 2003-06-04
  • 打赏
  • 举报
回复
示例
A. 使用 DECLARE
下例使用名为 @find 的局部变量检索所有姓以 Ring 开头的作者信息。

USE pubs
DECLARE @find varchar(30)
SET @find = 'Ring%'
SELECT au_lname, au_fname, phone
FROM authors
WHERE au_lname LIKE @find

下面是结果集:

au_lname au_fname phone
-------------------------------------- -------------------- ------------
Ringer Anne 801 826-0752
Ringer Albert 801 826-0752

(2 row(s) affected)

B. 在 DECLARE 中使用两个变量
下例从 Binnet & Hardley (pub_id = 0877) 的雇员中检索从 1993 年 1 月 1 日起所雇佣的雇员名称。

USE pubs
SET NOCOUNT ON
GO
DECLARE @pub_id char(4), @hire_date datetime
SET @pub_id = '0877'
SET @hire_date = '1/01/93'
-- Here is the SELECT statement syntax to assign values to two local
-- variables.
-- SELECT @pub_id = '0877', @hire_date = '1/01/93'
SET NOCOUNT OFF
SELECT fname, lname
FROM employee
WHERE pub_id = @pub_id and hire_date >= @hire_date

下面是结果集:

fname lname
-------------------- ------------------------------
Anabela Domingues
Paul Henriot

(2 row(s) affected)

pengdali 2003-06-04
  • 打赏
  • 举报
回复
INSERT T1 (anotherID _ID,id) values(2,(SELECT id FROM T2 WHERE id= 'a'))

??
happydreamer 2003-06-04
  • 打赏
  • 举报
回复
INSERT T2 (anotherID _ID,id)
SELECT 1,id
FROM [T1]
WHERE [T1].name= 'a'
bigsir 2003-06-04
  • 打赏
  • 举报
回复
奇怪?没人感兴趣吗?

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧