如何用一条SQL语句实现满足一个条件执行SQL语句一,否则执行SQL语句二如 table1
 ID 
 Name
Create
select count(*) from table1 当 count(*)大于100 执行 insert into(name)values('hello')否则执行delete from table1只是举一个例望高手能一条SQL实现满足一个条件执行SQL语句一,否则执行SQL语句二

解决方案 »

  1.   

    sql中的if else
    如果说条件下面只有一行的话就不用加begin end,不加的话则只执行if或else下的第一个SQL
    若有多行的话
    if
      begin
      .....
      ....
      end
    else
      begin
      ...
      ..
      ...
      end
    道理都是一样的
    if((select count(*) from table1)>100) 
      begin
        insert into(name)values('hello') 
      end
    else 
      begin
        delete from table1
      end
    有些照抄你的代码不知有无错误 意思到位了。。
      

  2.   

    CREATE TABLE #temp
    (
    id INT IDENTITY,
    [name] VARCHAR(100)
    )INSERT INTO #temp
    SELECT 'name1' UNION ALL
    SELECT 'name2'IF (SELECT COUNT(*) FROM #temp) > 100
    INSERT INTO #temp([name]) VALUES('hello')
    ELSE
    DELETE FROM #temp
      

  3.   

    一条语句做不到,需要使用判断语句.
    if 条件
       insert ...
    else
       delete ...你可以把这些语句写到存储过程中,然后调用存储过程.
       
      

  4.   


    IF((SELECT COUNT(*) FROM TABLE1)>100)
    INSERT INTO TABLE1 (NAME) VALUES('HELLO')
    ELSE
    DELETE FROM TABLE1一条sql搞不定
      

  5.   

    因为不是同时执行,这个需要经过判断。IF((SELECT COUNT(*) FROM TABLE1)>100)
    INSERT INTO TABLE1 (NAME) VALUES('HELLO')
    ELSE
    DELETE FROM TABLE1