mysql唯一键在查询中的使用与相关问题

  

<强> 1,建表语句:

        创建表的员工(   列出的int(11)不是零,   birth_date日期非空,   first_name varchar(14)非空,   last_name varchar(16)非空,   “性别”字符(1)非空,   hire_date日期非空,   主键(列出),   唯一键“idxunique_first_name_gender”(“first_name”、“性别”),   唯一键“uniq_idx_firstname”(“first_name”、“性别”)   )引擎=InnoDB的默认字符集=utf8      

<强> 2,添加独特的关键:

        ——添加独特的索引   alter table员工添加约束idxunique_first_name_gender独特(first_name、性别);      

<强> 3,查询测试语句:

        ——包含索引所有字段,且顺序和索引一致   select *从员工first_name=' Chirstian '和性别=癕”;   ——关键列值:idxunique_first_name_gender   ——包含索引所有字段,但顺序和索引不一致   从员工,性别选择*=癕”和first_name=癈hirstian”;   ——关键列值:idxunique_first_name_gender   ——包含索引第一个字段   select *从员工first_name=癈hirstian”;   ——关键列值:idxunique_first_name_gender   ——包含索引的非第一个字段   从员工,性别选择*=癕”;   ——关键列值:空      

4,在查询时,如果的条件里面只有唯一键里面的列(部分或者全部)且列值类型为const。如果要使用独特的关键,在里面必须得有建立唯一键时的第一列,其他列随意。

  

<强>一个与mysql唯一键相关的问题

  

xxx_tab的user_id是惟一键,来看看伪代码:

        得到从xxx_tab user_id=10000;   如果存在   {   恢复好了   }   ret=插入user_id=10000   如果后悔好   {   恢复好了   }   返回not_ok      

问题:为什么最后结果是not_ok & # 63;

  

提示:分布式影响

  

<强>总结

  

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。如果你想了解更多相关内容请查看下面相关链接

mysql唯一键在查询中的使用与相关问题