【问题标题】:sql - query to insert a column value if it does not exist in that column [closed]sql - 如果该列中不存在该列值,则查询以插入该列值[关闭]
【发布时间】:2009-12-10 12:00:36
【问题描述】:

sql - 如果该列中不存在列值,则查询以插入该列值

【问题讨论】:

  • 你的问题没有多大意义,你能扩展你的要求吗?
  • 如果某行不存在,我想插入一个值到表中
  • 我猜是update查询
  • 我不想更新我想插入一个值,例如插入到 emp("fruits") values("mango");当且仅当芒果不存在时,此语句必须插入
  • 您要在包含 NULL 的列的特定行中设置值,还是在特定列中不存在特定值时插入新行?

标签: sql


【解决方案1】:

两种方法

1.IF NOT EXISTS (SELECT fruit FROM emp WHERE fruit='mango') 
BEGIN 
INSERT INTO emp(fruit) Values('mango'); 
END 

2.INSERT INTO emp ('mango') SELECT distinct fruit FROM emp WHERE not exists (select fruit from emp as e Where emp.fruit = e.fruit);

【讨论】:

    【解决方案2】:

    嗯。你想要一个新的行吗?在这种情况下,

     IF NOT EXISTS(SELECT 1 FROM emp WHERE fruits = 'mango')
        INSERT INTO emp (fruits) VALUES ('mango')
    

    【讨论】:

    • 你能不能清楚地告诉我不存在。我想插入一个值,例如 insert into emp("fruits") values("mango");当且仅当芒果不存在时,此语句必须插入,你可以告诉我查询。
    • emp 是表名,fruits 是列名,mango 是值。现在你能告诉我怎么做吗
    • 好的,更新了示例。这和 valli 的第一个例子一样。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-19
    • 2021-01-14
    • 1970-01-01
    相关资源
    最近更新 更多