V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
MySQL 5.5 Community Server
MySQL 5.6 Community Server
Percona Configuration Wizard
XtraBackup 搭建主从复制
Great Sites on MySQL
Percona
MySQL Performance Blog
Severalnines
推荐管理工具
Sequel Pro
phpMyAdmin
推荐书目
MySQL Cookbook
MySQL 相关项目
MariaDB
Drizzle
参考文档
http://mysql-python.sourceforge.net/MySQLdb.html
anonymoustian
V2EX  ›  MySQL

MySQL 如何查询并更新字段的值?

  •  
  •   anonymoustian · 2016-12-29 22:46:49 +08:00 · 4210 次点击
    这是一个创建于 2696 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在有一个场景,有 param1,param2,param3,time_first,time_last,count 这几个字段

    向 MySQL 里面插入字段,查询条件 WHERE param1 =, and param2 =,param3=,

    如果没有查到 则 INSERT 这一行, count 设为 1, time_first 和 time_last 全都设为 时间戳

    如果查到了,那么 count++,并且更新 time_last 字段为当前时间戳。

    请问这句话的 SQL 该怎么写? 查了几个不太对

    4 条回复    2016-12-30 10:52:28 +08:00
    anonymoustian
        1
    anonymoustian  
    OP
       2016-12-29 22:58:32 +08:00
    其中如果 SQL 不能写的话 可以写在程序的控制逻辑里


    想问问大家什么原因 为什么 谢谢
    TaMud
        2
    TaMud  
       2016-12-29 22:59:01 +08:00
    谷歌
    mysql 如果存在 update 不存在 insert
    lujjjh
        3
    lujjjh  
       2016-12-29 23:01:41 +08:00   ❤️ 1
    (param1, param2, param3) 建唯一索引

    INSERT ... ON DUPLICATE KEY UPDATE

    http://dev.mysql.com/doc/refman/5.7/en/insert-on-duplicate.html
    anonymoustian
        4
    anonymoustian  
    OP
       2016-12-30 10:52:28 +08:00
    谢谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1033 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 22:39 · PVG 06:39 · LAX 15:39 · JFK 18:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.