Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在mysql中查询没有主键的表_Mysql_Database_Primary Key - Fatal编程技术网

在mysql中查询没有主键的表

在mysql中查询没有主键的表,mysql,database,primary-key,Mysql,Database,Primary Key,我是数据库新手,在查询没有字段指示为主键的表时遇到时间问题 比如说 +-----------+----------+------+-----+---------+-------+ |字段|类型|空|键|默认|额外| +-----------+----------+------+-----+---------+-------+ |a|u id | char(10)| NO | | || |媒体|字符(3)|是| |空|| |标签| char(37)| YES | | NULL || 如您所见,该

我是数据库新手,在查询没有字段指示为主键的表时遇到时间问题

比如说

+-----------+----------+------+-----+---------+-------+

|字段|类型|空|键|默认|额外|

+-----------+----------+------+-----+---------+-------+

|a|u id | char(10)| NO | | ||

|媒体|字符(3)|是| |空||

|标签| char(37)| YES | | NULL ||


如您所见,该字段没有任何键规范。当我进行类似这样的查询时 “从表中选择标签,其中a_id=?”,查询速度非常慢。这是由于缺少主键造成的吗


谢谢,

不,这是由于缺少索引造成的。主键必须包含唯一的非空值。如果在列上添加索引,它可能包含重复项,但查询速度仍然会更快

如果希望字段是唯一的,但不希望它是主键(尽管您应该想知道为什么),甚至可以添加唯一索引。它将强制值是唯一的,但它不是主键

当您希望表的id和描述都应该是唯一的时,这会很方便。通常,您会将id作为主键,而描述只是唯一的