只在其不为空的情况下更新

这个问题在这里已经有了答案:

  • 如何从SQL Server中的SELECT进行更新? 27个答案

  • 您可以使用此查询来实现您的约束。

    Update ExpressMarketCheck set Barcode = (select barcode from ExpressMarket where barcode IS NOT NULL)
    

    mySQL具有IFNULL功能,所以你可以这样做:

    UPDATE your_table_name
    SET your_column_name= "data",
    scan_created_date = ISNULL( your_column_name, "data" )
    WHERE id = X
    

    我想你想join

    update emc
        set Barcode = em.barcode, 
            Name = em.name,
            price= em.price
         from ExpressMarketCheck emc join
              expressmarket em
              on emc.?? = em.??;
    

    我无法从你的问题中看出join应该使用哪些列。 ?? 是占位符。

    链接地址: http://www.djcxy.com/p/16867.html

    上一篇: Update only in case where its not null

    下一篇: Mysql: Update table with select max of another table