我有两个名为table1和table2的表。 table1有key,condition,level和conditionvalue列,table2有key和value列。
table1行
for (int i=1; i<ARRAY_SIZE; i++)
{
if (main_array[i] < minimum)
{
minimum = main_array[i];
index_min = i; // only if a new minimum is found update the index_min variable
} // note the extra brackets ;-)
}
我将从用户或其他来源获取输入(键和值)以及我需要根据以下条件插入到table2中的值。
如果key为1且值为&gt; 10或值等于5然后我需要插入。 如果key为2且value为&gt; 20或者值小于5然后我需要插入。
如何使用sql insert语句实现此目的。
答案 0 :(得分:0)
试试这个:
IF EXISTS(
SELECT 1
WHERE (@Key=1 AND (@value>10 @value=5) ) OR (@Key=2 AND (@value>20 OR @value<5))
)
INSERT INTO Table2 (column1) VALUES (@values)
答案 1 :(得分:0)
试试这个:
INSERT INTO table2 (KEY, value)
SELECT KEY , conditionVal
FROM table1
WHERE KEY IN
(SELECT KEY
FROM table1
WHERE (KEY =1
AND (value >10
OR value =5) )
OR (KEY =2
AND (value >20
OR value <5))
AND
conditionVal IN
(SELECT conditionVal
FROM table1
WHERE (KEY =1
AND (value >10
OR value =5) )
OR (KEY =2
AND (value >20
OR value <5))