MySQL是否保证类似的查询
SELECT * from mytable
将按照与输出完全相同的顺序输出其字段
DESCRIBE mytable
有吗
我们有一条规则,即所有表的第一列始终是PRIMARY KEY,虽然在select *中依赖列的顺序可能并不总是一个好主意,但是确保提供的第一字段是非常有用的PK.
这是一个MySQL特有的问题,因此不是下面给出的链接的重复项.
解决方法:
答案是否定的,mysql不保证select *中的列的顺序与describe tablename输出中的顺序相同.在这两种情况下,Mysql文档均未指定列的顺序.但是,两个语句都可能按顺序位置列出列,因此实际上输出应该匹配.
但是,即使两种情况下字段的顺序相同,也并不意味着pk字段会首先列出.您可以在任何列上定义pk,而不仅仅是最左边的列.