如何使用一条mysql语句实现如果查询到的数据不存在就创建

你把这张表的 date和ip字段联合设置为唯一索引。ALTER TABLE `log` ADD UNIQUE `date_ip` (`date`, `ip`);然后你就大胆的insert数据吧。有重复的就报错插入失败。然后接着插入下一条就OK。
如何使用一条mysql语句实现如果查询到的数据不存在就创建
一条语句实现的方法不如存储过程方便,而且不如存储过程效率高,楼主写个存储过程会比较好

INSERT INTO log (date, ip) SELECT '2014-01-01' as date, '192.168.1.1' as ip FROM log WHERE NOT EXISTS ( SELECT * FROM log t WHERE t.data = '2014-01-01' AND t.ip = '192.168.1.1')2014-01-17
你把这张表的 date和ip字段联合设置为唯一索引。
ALTER TABLE `log` ADD UNIQUE `date_ip` (`date`, `ip`);然后你就大胆的insert数据吧。有重复的就报错插入失败。然后接着插入下一条就OK。
2014-01-19
-- 我这里假设你那个 id 是 自动递增的主键.INSERT INTO log (date, ip)SELECT '2014-01-01', '192.168.1.1' FROM dualWHERE NOT EXISTS ( SELECT * FROM log t WHERE t.data = '2014-01-01' AND t.ip = '192.168.1.1')2014-01-17
mysql 有判断语法

有四种方式进行判断:1. SHOW TABLES LIKE '%tb_bp_d_case%';2. select TABLE_NAME from INFORMATION_SCHEMA.TABLES whereTABLE_SCHEMA='dbname' and TABLE_NAME='tablename' ;3. 如果表不存在就建立这个表,那么可以直接用 create table if not exists tablename 这样的指令来建立,不需要先去查询表是否存在。4. 从模板表创建表:create table if not exists like old_table_name;

自己去套2014-01-17
INSERT INTO log (date, ip) SELECT '2014-01-01' as date, '192.168.1.1' as ip FROM log WHERE NOT EXISTS (
SELECT *
FROM log t
WHERE t.data = '2014-01-01' AND t.ip = '192.168.1.1'
)2014-01-17
这里有答案
存在则更新,否则新增(ON DUPLICATE KEY UPDATE)(Mysql)
2020-03-18
mengvlog 阅读 9 次 更新于 2025-07-20 21:15:16 我来答关注问题0
  •  翡希信息咨询 【MySQL】一条SQL查询语句是如何执行的?

    语法分析:根据语法规则,判断输入的SQL语句是否满足MySQL语法规则。如果SQL语法不对,会报错(如You have an error in your SQL syntax)。四、优化器 作用:决定SQL语句的执行方案,包括选择使用哪个索引、各个表的连接顺序等。优化过程:在表里面有多个索引的时候,决定使用哪个索引。在一个语句有多表...

  •  云易网络科技 MySQL中一条语句匹配多条记录的方法mysql一匹配多

    其中,column_name是要进行比较的列名,table_name是要查询的表名,value1、value2等是要进行比较的值。需要注意的是,如果要比较的值是一个子查询的结果,需要使用括号将子查询括起来。Example:我们有一张表student,其中存储了学生的姓名和成绩。我们想要查询成绩高于80分的学生的姓名。可以使用以下语句...

  • 使用MySQL的单列赋值,我们可以通过一条SQL语句,实现数据的更新和添加操作。相比使用INSERT INTO和UPDATE语句,单列赋值更为简洁和方便。但需要注意的是,为了使用单列赋值,我们需要将该列设置为唯一索引。

  • 1.数据查询 在数据查询中使用IF语句,可以根据不同的条件查询不同的数据。以下为示例:SELECT name, IF(age 其中,IF函数的参数为age 2.数据修改 在数据修改中使用IF语句,可以根据不同的条件修改不同的数据。以下为示例:UPDATE users SET status = IF(credit 其中,IF函数的参数为credit 3.数据删...

  • MySQL使用IF判断语句实现数据筛选 MySQL是一个开源的关系型数据库管理系统,它支持多种数据访问语言,包括SQL(结构化查询语言)和其他非SQL的语言。在MySQL中,IF语句是一种条件语句,它可以根据指定的条件对数据进行筛选和处理。本文将介绍如何在MySQL中使用IF判断语句实现数据筛选。1. 示例数据 为了便于...

檬味博客在线解答立即免费咨询

mySQL相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部