如何在sql navigator中使用多重插入
我是sql新手,我正在尝试为日常使用制作一个简单易用的插件, 我有一个表(矩阵),它保存了3个变量之间的联系, 在大多数情况下,我必须插入或更新矩阵,但每次插入都会因为矩阵而成倍增加,我举了一个简单的例子:如何在sql navigator中使用多重插入,sql,oracle,Sql,Oracle,我是sql新手,我正在尝试为日常使用制作一个简单易用的插件, 我有一个表(矩阵),它保存了3个变量之间的联系, 在大多数情况下,我必须插入或更新矩阵,但每次插入都会因为矩阵而成倍增加,我举了一个简单的例子: SELECT * FROM table_name where col1='A' and col2 in ('1G','2F','3Q') and col3 ='B' / INSERT INTO table_name VALUES('A','1G','B'); INSERT INTO tabl
SELECT * FROM table_name
where col1='A'
and col2 in ('1G','2F','3Q')
and col3 ='B'
/
INSERT INTO table_name VALUES('A','1G','B');
INSERT INTO table_name VALUES('A','2F','B');
INSERT INTO table_name VALUES('A','3Q','B');
输出表将是
A 1G B
A 2F B
A 3Q B
在更复杂的情况下
SELECT * FROM table_name
where col1='A'
and col2 in ('1G','2F','3Q')
and col3 in ('B','C')
/
INSERT INTO table_name VALUES('A','1G','B');
INSERT INTO table_name VALUES('A','2F','B');
INSERT INTO table_name VALUES('A','3Q','B');
INSERT INTO table_name VALUES('A','1G','C');
INSERT INTO table_name VALUES('A','2F','C');
INSERT INTO table_name VALUES('A','3Q','C');
输出表将是
A 1G B
A 2F B
A 3Q B
A 1G C
A 2F C
A 3Q C
有没有一种方法可以制作一个看起来像这样或具有类似功能的插件
例如A:
INSERT INTO table_name VALUES('A',in ('1G',2F','3Q'),'B');
例如b:
INSERT INTO table_name VALUES('A',in ('1G',2F','3Q'),in ('B','C'));
我通常一次在每个相乘的列中使用大约100个新值,因为矩阵可以组合select和insert语句。例如:
INSERT INTO table_name (col1, col2, col3)
SELECT col1, col2, col3
FROM table_x
WHERE col1='A'
AND col2 in ('1G','2F','3Q')
AND col3 ='B'
要做到这一点,表x需要包含您想要的所有值。如果您正在寻求一种方法来编写insert语句,该语句使用常量在行中构建值的“表”,那么您不能这样做