sql 特例

1 插入语句中的判断

     如果有就删除 在插入-----> 影响2行

     replace into user_concern(user_id,brand_id,status) VALUES(2100,202,1)

    如果有就修改 没有就插入----->影响1行

    INSERT INTO user_concern (user_id,brand_id) values ('2100','202') ON DUPLICATE KEY  UPDATE `STATUS` = 1

2 插入行时 自动更新时间
    CURRENT_TIMESTAMP
3 插入表时 忽略主外键重复
   INSERT ignore INTO
4 去除重复元素值
   distinct
5  sql中if语句  if stats=1 累加,else 插入
 update shopping_cart
   set number=if(stats=1,number+#{number},#{number}), stats=1
  where user_id=#{user_id} and goods_id=#{goods_id}
6 查询最后一次插入记录的Id
     SELECT LAST_INSERT_ID();

    SELECT    B.*,U.status=if(status is null,0,U.status) as status
    from    brand  B  
    LEFT JOIN user_concern  U  on U.brand_id = B.id

     where U.user_id=#{user_id}

7 mysql 更新替换指定字符串

UPDATE `goods_sale` SET goods_attr_values=REPLACE(goods_attr_values,'*','x') where name like ‘%*%’


8 字段修改自动更新时间
ALTER  TABLE  `goods_inventory`  ADD  `inventory_update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '属性更新时间' ;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值