插入数据当且仅当 mysql 数据库中没有重复数据
P粉883278265
P粉883278265 2023-09-13 18:17:33
0
1
507

<insert id="insertStockOrderAbusingList" parameterType="java.util.List">
    INSERT IGNORE INTO iruda_trade.stock_order_abusing (
        market_day,
        uid,
        stock_account_id,
        order_number,
        symbol,
        conclusion_quantity,
        order_type,
        created_at
    ) VALUES
    <foreach collection="list" item="item" index="index" separator=",">
    (
            #{item.transactionDate},
            #{item.uid},
            #{item.stockAccountId},
            #{item.transactionNumber},
            #{item.symbol},
            #{item.filledVolume},
            #{item.transactionType},
            #{item.clientTimeStamp}
     )
     </foreach>
</insert>

我正在尝试将数据插入 mySQL DB 中。如果参数中的 transactionDate、transactionNumber 和 uid 同时与 stock_order_abusing 表列中的 market_day、order_number、uid 相同,则不会有插入或应忽略插入。没有要比较的 pk(主键)。谷歌中的所有方法都告诉我应该有主键以防止重复插入。有什么办法可以解决这个问题吗?

P粉883278265
P粉883278265

全部回复(1)
P粉216807924

如果您想在存在重复记录时不采取任何操作,可以使用 INSERT IGNORE 语法。

这里是完整的语法指南

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板