sql语句,插入多行
INSERT INTO `userTable` (`user_id`, `user_name`) VALUES
(1, 'dsf'),
(2, 'fgy'),
(3, 'faad');
这个插入语句没错吧?现在我需要user_id的1,2,3是从另一张表anotherTable中查找出的符合某个条件的所有值,应该怎么做?
[解决办法]
你上面的插入语句是有问题的.
INSERT INTO XXX SELECT A,B,C,D FROM AAAAA;
这种方式.
你上面的插入语句是有问题的.
INSERT INTO XXX SELECT A,B,C,D FROM AAAAA;
这种方式.
表XXX中其他的value都要另外指定,但user_id是从AAAA中查找到的,该怎么做?
A DEMO FOR YOU
--建立测试表USERTABLE
CREATE TABLE USERTABLE(
USERID NUMBER(10),
USERNAME VARCHAR2(100)
);
--建立测试表ANOTHERTABLE
CREATE TABLE ANOHTERTABLE(
USERID NUMBER(10),
USERN VARCHAR2(100),
USERDEP NUMBER(10)
);
--模拟测试数据
INSERT INTO ANOHTERTABLE
SELECT LEVEL,
LEVEL
[解决办法]
'NAME',
MOD(LEVEL,4)
FROM DUAL
CONNECT BY LEVEL<=100;
--从ANOTHERTABLE插入到USERTABLE中
INSERT INTO USERTABLE(USERID, USERNAME)
SELECT USERID, USERN FROM ANOHTERTABLE;
大概的意思是,你需要SELECT出来一个结果集,这个结果集要与你要插入的那个表的表结构是一直的,然后前面加上INSERT INTO XXX