全部產品
Search
文件中心

ApsaraDB RDS:雲資料庫 RDS MySQL 版的decimal欄位過大導致查詢不準確

更新時間:Feb 28, 2024

問題描述

雲資料庫 RDS MySQL 版的decimal欄位過大,導致查詢不準確。

問題原因

雲資料庫 RDS MySQL 版的decimal欄位過大查詢不準的情況,這是MySQL資料庫的BUG引起。

解決方案

可以通過添加索引進行最佳化解決,最佳化SQL語句如下。

create table mlgtestdecimal(`campaign_id` decimal(24, 0) NOT NULL, name VARCHAR(50));

insert into mlgtestdecimal(campaign_id, name)
VALUES('XXXXXXX','XXXXXX');

insert into mlgtestdecimal(campaign_id, name)
VALUES('XXXXXXX','XXXXXX');

SELECT *
from mlgtestdecimal
where campaign_id='XXXXXXX'
  and name='XXXXXX'
  alter table mlgtestdecimal add index ind_decimal (`campaign_id`);

適用於

  • 雲資料庫RDS MySQL版