我有一个表格A
,其中列id
以及此id
中的属性:1 to 20 or any others
。我希望SQL查询的方式是Query
将在列中搜索特定的id
,然后执行一些操作,否则插入一个具有该(11)值的新行。
简而言之
Search 11 in id if found then update 11 to 12 otherwise insert 11 into id
答案 0 :(得分:3)
使用If...Else
。
IF EXISTS (SELECT * FROM TABLE_NAME WHERE id=11)
BEGIN
UPDATE TABLE_NAME SET ..set column with values
END
ELSE
BEGIN
INSERT INTO TABLE_NAME VALUES (values....);
END
答案 1 :(得分:2)
if not exists(select id from some table Where id = @someid)
begin
insert sometable(id) Values (@id)
end
else
begin
/* do something else */
end
保持简单......
答案 2 :(得分:0)
我不确定您的请求是否有查询,但我认为您可以通过使用php,asp等条件订单单独执行.PHP示例在这里:
<?php
$number = 11 ;
$query = mysql_query("select * from `table` where `id` = '".$number."'");
if ( mysql_num_rows($query) >= 1 )
{
echo 'Existed !';
}
else
{
echo 'Not existed , making :';
$query = mysql_query('insert into `table` values ( "11", ... )');
}
?>
答案 3 :(得分:0)
试试这个
if not exists(select top 1 id from some table Where id = @someid)
begin
insert sometable(id) Values (@id)
end
else
begin
-- do something
end