mysql - 比较多个字段的算法

标签 mysql algorithm

我有一张表信息

CREATE TABLE `info` (
   `id` int(11) NOT NULL DEFAULT '0',
   `name` varchar(50) NOT NULL,
   `email` varchar(50) NOT NULL,
   `phone` varchar(50) NOT NULL,
   PRIMARY KEY (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8

可比较的字段是姓名、电子邮件和电话。

我的比较规则是:三个字段中的任意两个相等则两个记录相等。

所以我的问题是实现此功能的最有效方法是什么。

附言如果需要,我可以添加额外的字段。

最佳答案

MySQL 为真返回 1,为假返回 0。

Select * From info 
WHERE (name = 'name') + (email = 'email') + (phone = 'phone') > 1

关于mysql - 比较多个字段的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33819216/

相关文章:

algorithm - 了解 CLRS 上的通用哈希章节

Mysql限制当整个列表可能改变

python - 如何为所有 2^N bool 条件编写 If 语句(python)

mysql - 如何从 select() 交叉引用表

php - php中mysql的左连接/外键问题

c++ - 计算范围内可被 K 整除的数字和范围内的数字之和

javascript - Leetcode 上的组合和 III

c++ - 给定二叉树是否为二叉搜索树

mySQL 仅选择包含任何顺序的一些字母的数据

php - 除了 XSS 和 Sql 注入(inject)之外,我可以通过哪些方式保护我的网站?