当前位置:  开发笔记 > 数据库 > 正文

SQL选择:如果存在则更新,否则插入 - 使用日期部分比较?

如何解决《SQL选择:如果存在则更新,否则插入-使用日期部分比较?》经验,为你挑选了1个好方法。

我需要使用以下字段更新数据库中的记录

[ID] int (AutoIncr. PK)
[ScorerID] int
[Score] int
[DateCreated] smalldatetime

如果今天的日期存在记录(只应检查日期部分,而不是时间)和给定的记分员,我想更新这个人和今天的分数值.如果得分手今天没有记录,我想创建一个新记录.

我正在试着弄清楚如何将它放入单个(这可能吗?)sql语句中.顺便说一句,我正在使用MSSQl数据库和ExecuteNonQuery()方法来发出查询.



1> Timothy Khou..:
IF EXISTS (SELECT NULL FROM MyTable WHERE ScorerID = @Blah AND CONVERT(VARCHAR, DateCreated, 101) = CONVERT(VARCHAR, GETDATE(), 101))
    UPDATE MyTable SET blah blah blah
ELSE
    INSERT INTO MyTable blah blah blah

推荐阅读
手机用户2502851955
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有