查詢結果集很小,但 Created_tmp_disk_tables 不斷增加
官方文件: https://dev.mysql.com/doc/refman/5.7/en/internal-temporary-tables.html
create table tb(id int , va varchar(10));
insert into tb(id, va) values (1, 'Created_tmp_disk_tables');
Some query conditions prevent the use of an in-memory temporary table, in which case the server uses an on-disk table instead:
Presence of a BLOB or TEXT column in the table. This includes user-defined variables having a string value because they are treated as BLOB or TEXT columns, depending on whether their value is a binary or nonbinary string, respectively.
# BLOB、TEXT列, 或者自定義變數被按BLOB、TEXT型別處理
alter table tb modify va text;
select * from (select * from tb) t;
Presence of any string column with a maximum length larger than 512 (bytes for binary strings, characters for nonbinary strings) in the SELECT list, if UNION or UNION ALL is used.
# 列長度定義超過512,在union時
alter table tb modify va varchar(513);
select * from tb union select * from tb;
The SHOW COLUMNS and DESCRIBE statements use BLOB as the type for some columns, thus the temporary table used for the results is an on-disk table.
# 查詢表的列資訊時。這個比較坑
SHOW columns from tb ;
DESCRIBE tb;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26250550/viewspace-2693051/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Mybatis 查詢語句結果集總結MyBatis
- PostgreSQL函式:返回表查詢結果集SQL函式
- DBeaver 匯出多個查詢結果集
- 備忘:laravel 對查詢結果集可以迴圈where查詢Laravel
- 巧用臨時表將大結果集轉換為小結果集驅動查詢薦
- 使用ROWNUM將導致查詢結果集的固化
- JAVA + Oracle儲存過程返回查詢結果集JavaOracle儲存過程
- MySQL pager和nopager命令--不顯示查詢結果MySql
- 判斷 Eloqument 模型查詢資料結果是否為空模型
- mysql查詢結果多列拼接查詢MySql
- SQL查詢結果集對注入的影響及利用SQL
- navicat 匯出查詢結果
- mysql匯出查詢結果MySql
- PB帶引數帶結果集的動態SQL查詢SQL
- Mybatis模糊查詢結果為空MyBatis
- ps aux查詢結果解釋UX
- 在sqlplus下格式化輸出查詢結果集SQL
- MySQL查詢結果匯出方式總結MySql
- Mybatis底層原理學習(三):查詢結果集的處理原理MyBatis
- JPA SQL 查詢、結果集對映(@NamedNativeQuery、@ColumnResult註解說明)SQL
- JAVA資料庫處理(連線,資料查詢,結果集返回)Java資料庫
- xsl中,對xml文件查詢的結果再次查詢XML
- PLSQL Developer 複製查詢結果 卡頓SQLDeveloper
- ORDER對查詢結果進行排序排序
- 使用查詢結果更新表的方法
- oracle查詢結果外面新增引號Oracle
- Oracle查詢結果 儲存為XMLOracleXML
- oracle 查詢結果的各種格式Oracle
- PLSQL Language Referenc-PL/SQL靜態SQL-帶有子查詢的查詢結果集處理SQL
- ES查詢之查詢屬性過濾、結果高亮顯示
- PLSQL Language Referenc-PL/SQL靜態SQL-查詢結果集處理SQL
- MySQL 將查詢結果匯出到檔案MySql
- [Mysql 查詢語句]——對查詢結果進一步的操作MySql
- 等於NULL的查詢條件導致查詢結果不正確Null
- iOS FMDB有返回結果集和無返回結果集iOS
- sqlserver查詢結果中新增自動編號SQLServer
- MySQL 查詢結果取交集的實現方法MySql
- SQL 把查詢結果當作"表"來使用SQL