不清楚怎么在数据表中插入子查询结果

我想把cus表中的词典插入到dd表中,老是出现这个错误:

消息 213,级别 16,状态 1,第 2 行
列名或所提供值的数目与表定义不匹配。

代码如下:
create database abc
on primary
(
name=abc_data,
filename='D:\1\abc_data.mdf',
size=3,
maxsize = unlimited ,
filegrowth=1
)
log on
(
name=abc_log,
filename='D:\1\abc_log.ldf',
size=1,
maxsize=20,
filegrowth=10%
)

create table cus(
cid char(8) not null,
cname varchar(8) null,
caddress varchar(30) null,
cphone char(11) not null,
primary key (cid)
)
create table dd(
cid char(8) not null,
gid char(10) not null,
tprice char(4) null,
primary key(cid,gid)
)
create table goods(
gid char(10) not null,
price char(5) null,
gaddress varchar(20) not null,
primary key(gid)
)

insert into cus
values('2018001','小周','福寿小区','10001'),
('2018002','小吴','幸福小区','10011'),
('2018003','小边','阳光小区','10002'),
('2018004','小张','幸福小区','10031'),
('2018005','小朴','阳光小区','10021'),
('2018006','小金','月亮小区','10051'),
('2018007','大金','月亮小区','10061')
*/
insert into goods
values('1001','100','重庆'),
('1002','200','山东'),
('1003','300','重庆'),
('1004','400','四川'),
('1005','500','山东'),
('1006','600','香港'),
('1007','600','上海'),
('1008','700','上海'),
('1009','800','内蒙古'),
('1010','900','甘肃')

insert into dd
select cid from cus

这是为什么呢,为什么插不进去呢?哪里的表定义不对呢?新手表示快要秃头。。。

sql
0

3个回答

这样:
insert into dd(cid)
select cid from cus

0

--需要声明你插入的列名称,不写的情况只有全部的时候。
INSERT INTO dd(cid)
SELECT cid FROM cus

0

需要设置两个表格的对应字段,才能把要插入的数据列对应的数据插入到另一张表格中的对应列或对应字段中去。--insert into dd(cid)‘dd表中的对应字段’select cid‘cus表中查询的结果字段’ from cus

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
插入子查询结果
insert into studentselect('354546',tcourse,'','未选')rnselect tcourse from teachprograming where coname='' and tgrade =1rnrn[color=#FF0000]消息 102,级别 15,状态 1,第 1 行rn'tcourse' 附近有语法错误。[/color]rn
SQL server中关于插入子查询的结果
我有三张表,用户表:rn[code=sql]create table users(rn userId int primary key identity(1,1) ,rn username varchar(20) unique notnull,rn password varchar(20) not null,rn email varchar(30),rn powers varchar(20) not null,rn sex varchar(20) ,rn address varchar(40) not null,rn integration varchar(40) not null,rn account Numeric(10,2),rn present varchar(20)rn)rn[/code]rn礼物表rn[code=sql]create table present(rn pid int primary key identity(1,1),rn pname varchar(20) unique not null,rn pjf Numeric(10,2),rn pphoto varchar(20)rn)[/code]rn兑换表rn[code=sql]create table redeem(rn rid int primary key identity(1,1),rn userid int,rn pid int,rn rdate Datetime default(getdate()),rn rcl varchar(20),rn foreign key (userid) references Users(userid),rn foreign key (pid) references present(pid)rn)[/code]rnrn现在我能知道username和pid.我想向redeem表中插入一条数据,就插入userid和pid.Sql语句怎么写。求大神指导
MySQL将查询结果插入到数据表中
基本的语法格式如下: INSERT INTO 表名1(字段列表1) SELECT 字段列表2 FROM 表名2 WHERE 条件表达式; 表名1:表示记录插入到哪个表中。字段列表1:表示为哪些字段赋值。字段列表2:表示从表中查询出哪些字段的数据。表名2:表示记录是从哪个表中查询出来的。条件表达式:表示设置SELECT语句的查询条件。 将“表名2”中查询出来的记录插入到“
插入子查询结果的INSERT语句格式及例子

 INSERT [INTO] <表名> [<属性列1>,<属性列2>,...] 子查询;
 demo:
 给SC添加记录,给所有学生选5号课,成绩均为60
 解:
 
 insert into sc 
 (sid,cid,grade)
 selec
插入子查询
Dim r1 As Stringrn Dim r2 As Stringrn Dim r3 As Stringrn Dim r4 As Stringrn Dim r5 As Stringrn Dim r6 As Stringrn Dim r7 As Stringrn Dim r8 As Stringrn Dim r9 As Stringrn Dim r10 As Stringrn Dim r11 As Stringrn Dim r12 As Stringrn r1 = Form3.DataGrid1.Item(0, 3).ToStringrn r2 = Form3.DataGrid1.Item(0, 1).ToStringrn r3 = Form3.DataGrid1.Item(0, 0).ToStringrn r4 = Form3.DataGrid1.Item(0, 4).ToStringrn r5 = Form3.DataGrid1.Item(0, 2).ToStringrn r6 = Form3.DataGrid1.Item(0, 5).ToStringrn r7 = Form3.DataGrid1.Item(0, 8).ToStringrn r8 = Form3.DataGrid1.Item(0, 10).ToStringrn r9 = Form3.TextBox2.Text.ToStringrn r10 = Form3.Label6.Text.ToStringrn r11 = DateTimePicker1.Text.ToStringrn r12 = Label5.Text.ToStringrn Dim r As Stringrn r = "insert into 销售表(商品条码,商品编号,商品名称,单位,类型,规格型号,售价(¥),会员价(¥),数量,总金额(¥),交易日期,交易时间) values (" & "'" & r1 & "'" & "," & "'" & r2 & "'" & "," & "'" & r3 & "'" & "," & "'" & r4 & "'" & "," & "'" & r5 & "'" & "," & "'" & r6 & "'" & "," & "'" & r7 & "'" & "," & "'" & r8 & "'" & "," & "'" & r9 & "'" & "," & "'" & r10 & "'" & "," & "'" & r11 & "'" & "," & "'" & r12 & "'" & ")"rn OleDbDataAdapter1.InsertCommand.CommandText = rrn OleDbDataAdapter1.Update(DataSet11)rnForm3.DataGrid1里显示的是从另一个表中查询出的结果,请问对吗?不对该怎么写?rn
请问怎么在查询结果中加入子查询的结果
比如我可以这样:rnSELECT Name, Age, (SELECT NameFROM TABLE_A) FROM TABLE_Brn这样就可以获得一个3列的结果rn但是如果我的子查询的结果超过一列的话,比如rnSELECT Name, Age, (SELECT Name, Age FROM TABLE_A) FROM TABLE_Brn就不行了,有没有什么办法能实现把子查询加入到外面的查询结果中。
MySQL数据表的子查询
子查询语句 在一个select语句中嵌入了另一个select语句,那么被嵌入的select语句叫做子查询语句 主查询语句 第一个select语句 主查询和子查询的关系 子查询的分类 1、标量子查询(子查询语句返回的是一个值) 查询students表中大于平均年龄的学生信息 查询班级学生平均年龄 查询大于平均年龄的学生 子查询:select语句
MySQL如何将select子查询结果横向拼接后插入数据表中
我的要求具体是这样的。我有数据表audit的结构如下:+-----------+------------+------+-----+-------------------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------+------------+------+-----
多个查询结果,同时插入到一个数据表
我想将多个查询结果,同时插入到一个数据表中,以两个为例说明, rn rn表a rn字段 rnaa rnbb rncc 字段都是text类型 rn表b rndd rnee rnff 字段都是text类型 rn我想把这表a中aa字段为5的个数,表b中bb字段为34的个数,插入的b表的dd,ee字段 rn下面的语句 rninsert into b(dd,ee) values rn(select count(*) from a where aa = '5 ',select count(*) from a where bb= '34 ') rn不对 rn rn插入一条查询的时候 rninsert into b(dd) rnselect count(*) from a where aa = '5 ',可以插入正确的数据 rn但是 rninsert into b(dd,ee) rnselect count(*) from a where aa = '5 ',select count(*) from a where bb= '34 ' rn又是不对的 rn rn请问这条sql语句该怎么写? rn请各位赐教啊 ! rn
数据表的插入
string mystr, mysql;rn mystr="provider=microsoft.jet.oledb.4.0;data source=E:\\ACCESS数据库文件\\student.mdb";rn OleDbCommand mycmd=new OleDbCommand();rn OleDbConnection myconn=new OleDbConnection();rn myconn.ConnectionString=mystr;rn myconn.Open();rn mysql="insert into course values ('textBox1Text','textBox2.Text','textBox3.Text')";[b][/b]rn mycmd.CommandText=mysql;rn mycmd.Connection=myconn;rn mycmd.ExecuteNonQuery();rn执行红色的语句后,为什么不能把textbox的值插到数据库里去,而插入的是控件的名称? rn rn
关于多数据表查询,子查询,然后对结果进行分组
我的T_Award数据表的内容是这个样子rn[img=http://pic002.cnblogs.com/images/2012/326954/2012083120454715.png][/img]rnrn我使用了这样的SQL函数使数据这样分组的显示出来了rn[code=SQL]rnselect typename, awardname = stuff((select ',' + awardname from T_Award t where typename = T_Award.typename for xml path('')) , 1 , 1 , '')rnfrom T_Awardrngroup by typenamern[/code]rnrn结果是这个样子rn[img=http://pic002.cnblogs.com/images/2012/326954/2012083120505382.png][/img]rnrn然后我在使用一个多表查询的时候使用的SQL语句是这个样子rn[code=SQL]rnselect a.personName,d.awardName ,c.activityName,d.typeNamern from T_Person arn join T_PersonAwardR brn on a.id=b.personIdrn join T_Activity crn on b.activityId=c.idrn join T_Award drn on d.id=b.awardIdrn where c.activityName='万人长跑大赛' and d.typeName='优秀主持人奖';rn[/code]rnrn这样我的查询结果是这个样子rnrn[img=http://pic002.cnblogs.com/images/2012/326954/2012083120491849.png][/img]rnrn然后我想仿照着第一个例子的语句使我的数据这样显示rn[img=http://pic002.cnblogs.com/images/2012/326954/2012083120525057.png][/img]rn写了一下午了,就是仿照不出来,只能请大家帮帮忙了。谢谢~~~~rn
这个子查询的结果应该是~~
[code=SQL]with tb asrn(select type = 'A',col1 = 1,col2 = 3,col3 = 5,col4 = 9 union allrnselect type = 'B',col1 = 5,col2 = 1,col3 = 7,col4 = 1 union allrnselect type = 'C',col1 = 3,col2 = 7,col3 = 2,col4 = 6 union allrnselect type = 'D',col1 = 6,col2 = 8,col3 = 5,col4 = 2rn)rnSELECT TYPE,rnCOLMAX = (SELECT MAX(COL) FROM ( SELECT COL = TB.COL1 UNION ALLrnSELECT COL = TB.COL2 UNION ALLrnSELECT COL = TB.COL3 UNION ALLrnSELECT COL = TB.COL4rn)Arn)rnFROM TB[/code]rn这个子查询的结果应该是什么样的~~设计到CTE的做法就不清楚~~怎么理解最好
mysql 删除子查询的结果
我想用如下语句删除查询结果,但是报错rn错误如下:#1093 - You can't specify target table 'jo_sourcedata' for update in FROM clausern[code=SQL]rndelete from sourcedata where exists(select * from sourcedata js where js.item_type=2 and not exists (select * from person jp where jp.per_id = js.item_id ))rn[/code]rnrn我又想到用,如下的语句,但是也出现语法错误rn[code=SQL]rndelete from sourcedata where id in (select js.id from sourcedata js where js.item_type=2 and not exists (select * from person jp where jp.per_id = js.item_id)rn[/code]rnrn请帮忙看看用什么语句才能删除查询出来的结果,查询出来的结果有(10万多条),我想在phpmyadmin的sql里运行。谢谢。
SqlServer 多个子查询结果怎么拼接在一起
商品表 t_goods rnID 主键 int自增rnCode 商品编码 nvarchar(100)rnName 商品名称 nvarchar(100)rnStatus 状态 tinint,default 1 --1为启用,0为停用rn--------------------------------------------------------------------------rn库存表:t_StockrnID 主键 int自增rnCode 商品编码 nvarchar(100)rnStockNum 库存数量 intrn--------------------------------------------------------------------------rn流水主表:t_ApplyrnID 主键 int自增rnBillNo 订单号 nvarchar(100)rnType 订单类型 int,1入库 2出库 3退还 4破损rnOperationTime 操作时间 datetimern--------------------------------------------------------------------------rn流水表:t_Apply_detailrnID 主键 int自增rnBillNo 订单号 nvarchar(100)rnCode 商品编码 nvarchar(100)rnOperationNum 操作数量 intrnrn需要查询出来的结果为下图:rn[img=https://img-bbs.csdn.net/upload/201608/14/1471172829_630298.png][/img]rnrn求各位大牛支支招,已经被这个问题给困扰死了,鄙人万分感谢rn
子查询结果连接的问题。
有两个表,一个教室,一个学生rnclassroom(id,name )rnstudent(id,classroomid,name)rn我想查询教室,但是,需要在结果集中,有一列把处于本教室的学生姓名连接一下,列出来。rnrn希望结果是rn 教室ID 教室名 学生rn 1 1班 张三,李四,那五rnrn求解。只想到建一个存储过程。
复用子查询的结果
在我的查询中,有多个地方都要用到同样的一个子查询?怎么复用这个自查询?rn我是在vc中使用,所以不能用到变量之类的东西rn就是一句查询中复用这个子查询
子查询结果不止一个
今天开发项目时,写了一条有子查询的sql语句。如下: strsql.Append(" SELECT * FROM WF_FCOST_Approve ");             strsql.Append("WHERE id             strsql.Append("AND AppID='" + AppID + "' "); 但一直报子查询的结果不止一个,虽然加上条件后结
mysql 批量子查询插入
insert into tb_indiana_member_bak20160603  ( select * from `tb_indiana_member` t where t.`indiana_member` in (3768,4558,6126,6574,6596,6597) and t.`create_date` like '2016-06-03%' and t.`payment_sn
MYSQL插入中带子查询
各位论坛友友们好,我有个问题,如果你有空,麻烦占有你的一点时间回复一下。先谢谢啦。。问题是这样的我想添加一张表的数据,表名是goods_attr,其中字段是这样的goods_attr_id【主键自增】 goods_id【外键】, attr_id【外键】 ,attr_value, attr_price, 本来是直接添加的。但是呢我要的是实现批量。如insert into goods(goods_id,attr_id,attr_value,attr_price) values(...) 我想先通过模糊查询查询出attr_value对应的goods_id【这里可能有多个不同的值】.然后再判断同一goods_id上不同的attr_id对应的值是否存在,如果不存在就插入,否则不用插入。我这样说不知道你听懂没?期待你的回复!rn
在数据表中插入一条记录
大家好:rn 小弟有个小问题请教大家,如何在数据表中插入一条记录rn 是用ADO的方法呢?还是用SQL语句呢?rn 请各位高手说一下具体的步骤,最好举个例子,小弟在这先谢了!!!
如何插入空值到数据表中?
strSQL="Insert into pro ( pro_qua) Values (" & txtqua.text &")"rn在执行上以上插入语名时,当txtqua文本框的值不为空时,可执行,但如果为空时,则出现错误!rn注:pro表中的pro_qua字段的数据类型为 数字。如何插入空值??
如何将照片插入到数据表中?
如何用SQL语句将照片插入到数据表中?
插入子查询数据
表Arnid username rn1 wwwwrn2 wassrn3 ffffrn表Brnid username cishu(次数)rnrnrn我要将表A的内容插入到表B中 并且表B的cishu的值为2rn请问这个INSERT 语句该怎么写啊?
在相关子查询中,父查询如何获得子查询的结果
使用相关子查询,来查找所有其薪水多于他所在部门的平均薪水的雇员,显示名字、部门号和部门的平均薪水,按平均薪水排序。rn这里的emp表 是Oracle自带的那个表,rnrn这个事使用其他方法的答案rnSelect e1.ename,e1.deptno,e1.sal,e2.avgsalrnFrom emp e1,(Select deptno, Avg(sal) avgsal From emp Group By deptno)e2rnWhere e1.deptno=e2.deptnorn And e1.sal>e2.avgsalrn而使用相关子查询rnSelect e.ename,deptnornFrom emp ernWhere exist sal>(Select Avg(sal)From emp Where deptno=e.deptno And e.sal>Avg(sal));rn这里我就没法获得部门的平均薪水,请问大神们类此这样的问题,父查询语句怎样获得子查询的结果呢
如何计算子查询中的结果数目
大侠们,我今天为计算有重复数据的字段用了一个笨的方法:sql="select count(select distinct city from table1 where code=2) as count1 from table1" 出来的结果提示:Microsoft JET Database Engine '80004005' rn子查询最多能返回一个记录。 请问这样查询不对吗? 该怎么写? 我想算一下 code=2的去过多少个不重复的city 谢谢了rn
interbase 中的子查询怎么实现?
比如这样的查询rnselect * from (select * from table1) tbrn以上为sql server下语法,不知interbase 中怎么实现?
dataset 插入到不同的数据表,列怎么对应?
dataset 有4个表,分别要插入到4个表中rn但dataset里面的列名和数据库里面的表名不一样,字段个数是一样的,要怎么映射过去 ?rn求解答~~rn
mysql update更新子查询结果
UPDATE mem_user_yun_temp t1 ,mem_user_temp t2 SET t1.ralation_id = t2.id ,t1.ralation_memberid = t2.memberid ,t1.login_name = t2.login_name where t1.id = t2.tempid; UPDATE ( SELECT tt.* from yun_trus...
access 子查询结果排序问题
比如有两个表:rndanweirnid namern1 单位1rn2 单位2rnrndefenrnid did fen nianrn1 2 100 2011rn2 2 90 2011rnrn其中defen.did=danwei.id,我想获得,2011年内所有单位的总得分并用总分排序。rn我的语句:rnSELECT id, name, (select sum(fen) from defen b where a.id = b.did and nian = '2011') as fen from danwei a order by fen descrn为什么 order by fen desc不能用?要怎么排序?
单行子查询返回多个结果
请问大家,如何对oracle子查询出来的结果进行判断,例如,rnselect p.* from user p where [color=#FF0000](select count(*) from user q group by q.class)>2[/color];rn就是如何对红色区域进行判断,我写的>2会报错,因为返回的是多个结果,所以大于2肯定不对,大家有什么解决方法?谢谢!
子查询返回的结果多于一个
delete from portray where id in (2909,2910)rn执行上面这条语句的时候,提示"子查询返回的结果多于一个",这是为什么?
数据表统计结果的问题
有这样两个表:员工表(useri_ID,user_name)rn员工签到表(user_ID,check_Type,check_date)rnrn员工表类似如下数据:rnuser_ID check_type check_datern 810 正常 2006-8-1rn 810 迟到 2006-8-2rn 810 早退 2006-8-3rn xxx 请假 xxxxrnrn现在想得到如下统计数据rnrnuser_name 迟到 早退 正常 请假 休假 旷工 休假rn 员工名 数量 n n n n n n rnrn怎么写这些语句阿rnrn
子查询的结果能否再次引用?
我在一个查询里面使用到了两个子查询,并且还需要这两个子查询的结果之差,不知怎么写?rnrn我原来的想法是象这样:rnselect rn (select sum(amount) from accountTable where userid=user.userid and type='income') as income,rn (select sum(amount) from accountTable where userid=user.userid and type='payout') as payout,rn (income-payout) as balancernfrom userrnrn但是在(income-payout) as balance这里出了错,好像不能在查询里面再次引用子查询的结果,我又不想再多做一次子查询,请问该怎么办?rnrn请注意,两个子查询是根据不同条件查同一个表的,似乎不能用groupby来代替?rn
update语句插入子查询出错
语句是rnrnupdate xiao set xiao.作废=KK.数量 rnfromrn (select kk.编码,sum(出库) as 数量rn from [select out.类别,out.编码,outdl.出库 from out inner join outdl rn on out.编号=outdl.编号].as KK where 类别='损耗' group by KK.编码)rnwhere xiao.编码=KK.编码rnrnrnrn提示出错,我真不晓得咋弄了.rn
Kettle应用场景之数据表插入
一、应用场景    将数据源A库的某张表的数据插入到数据库B中的某张表中1.创建Mysql数据库testA,切换数据库至testA,创建表tableA:2.创建Mysql数据库testB,切换数据库至testB,创建表tableB:3.我们最终的目的,就是将数据库testA中的表tableA中的数据导入数据库testB中的空表tableB中。4.打开Kettle软件,windows下双击如下图标:...
多数据表插入
用两个表,表A(a1,a2,a3,a4),表B(b1,b2,b3,a1) 其中a1,b1是主键,b3是个数组1,2,3,4,5,6....,在表B中每一个a1对应数组b3中的所有向,我要同时向表A,表B插入数据,如何实现??rn
数据表插入问题
我有两个表table1 table2.rntable1中有数据 字段dm,字段mc.rntable2中没有数据,需要从table1中提取数据插入到table2中rntable2中的字段 dm1,mc1,dm2,mc2,dm3,mc3rnrntable1中的dm 值为10,11,1001,1002,1101,100101,100102rntable2中需要的是10,mc,1001,mc,100101,mcrn 10,mc,1001,mc,100102,mcrn 10,mc, 1002, mcrn 11 mc 1101rn需要的是这种结果!rn请大家帮忙
插入现有数据表信息
2个数据库的结构一样,一个在本地、一个在异地,要是我想把本地数据表[color=#FF0000]新添加的信息[/color],导入到异地的数据表,rn不用备份还原,也不用一条条自己写insert语句,有没有什么方便的方法呢?谢谢!
数据表的匹配性插入
    数据库的匹配插入字段值。    在系统交互时,业务表进行登记交易流水是最基础也是极其重要的步骤,流水登记的质量直接影响着后续的业务。一般我们在数据库登记时,常用的操作是写一个sql,例如INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)    我们将要登记的列逐个罗列出来,后面赋上对应的值。这种方式在数据库字段少的时候或者需要登...
怎么将远程数据库中的查询结果插入到本地数据库中
我远程查询语句为:rn select acco_code as 帐号,stud_code as 编号,acco_name as 姓名,'rn +' meal_card_code as 卡号 from bs_acco_info where del_Flag='rn +quotedstr('0');rn我使用AdoQuery控件将结果显示出来,rn请问如何才能插入到本地表中.最好有源码例子
相关热词 c#异步发送kafka c#窗体编号 c# 操作二进制文件 c# 反射 机制 c#线程 窗体失去响应 c#角度转弧度 c# 解析gps数据 c# vs设置 语法版本 c# json含回车 c#多线程demo