小编ant*_*tak的帖子

在 MySQL 命令中将列限制为特定宽度

mysql命令提供了很好的表格输出,其中考虑了半宽和全宽间距。

例如:

> select 'The quick brown fox jumps over the' text union select '???????????';
+------------------------------------+
| text                               |
+------------------------------------+
| The quick brown fox jumps over the |
| ???????????             |
+------------------------------------+
2 rows in set
Run Code Online (Sandbox Code Playgroud)

鉴于此,如何将列截断为特定宽度?

例如,我如何得到这个?

+----------------+
| text           |
+----------------+
| The quick brow |
| ??????? |
+----------------+
Run Code Online (Sandbox Code Playgroud)

编辑:就我尝试过的而言。

如果我通过将查询更改为使用以下内容来尝试此操作LEFT()

> select left(text, 7) text from (select 'The quick brown fox jumps over the' text union select '???????????') x;
+-----------------------+ …
Run Code Online (Sandbox Code Playgroud)

mysql

7
推荐指数
1
解决办法
3142
查看次数

`SERIAL PRIMARY KEY` 是否在表上创建两个索引?

由于SERIAL是 的简写BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE,它看起来像是SERIAL PRIMARY KEYUNIQUE和上加倍PRIMARY KEY

> CREATE TEMPORARY TABLE foo (id SERIAL PRIMARY KEY);

> SHOW CREATE TABLE foo \G
*************************** 1. row ***************************
       Table: foo
Create Table: CREATE TABLE `foo` (
  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`id`),
  UNIQUE KEY `id` (`id`)
)
Run Code Online (Sandbox Code Playgroud)

肯定有同时看到和in的wtf因素,但这真的是我看到的两个物理索引吗?PRIMARY KEYUNIQUE KEY idSHOW CREATE TABLE

应该避免使用PRIMARY KEYwithSERIAL而选择 write bigint …

mysql

7
推荐指数
1
解决办法
807
查看次数

标签 统计

mysql ×2