当前位置: 首页 > 编程笔记 >

检查一列以获取MySQL中的唯一值

公孙茂学
2023-03-14
本文向大家介绍检查一列以获取MySQL中的唯一值,包括了检查一列以获取MySQL中的唯一值的使用技巧和注意事项,需要的朋友参考一下

您可以为此使用子查询。让我们首先创建一个演示表

mysql> create table uniqueBothColumnValueSameDemo
   -> (
   -> UserId int,
   -> UserValue int
   -> );

使用insert命令在表中插入一些记录。查询如下-

mysql> insert into uniqueBothColumnValueSameDemo values(10,20);
mysql> insert into uniqueBothColumnValueSameDemo values(10,20);
mysql> insert into uniqueBothColumnValueSameDemo values(20,30);
mysql> insert into uniqueBothColumnValueSameDemo values(20,40);
mysql> insert into uniqueBothColumnValueSameDemo values(50,10);
mysql> insert into uniqueBothColumnValueSameDemo values(50,10);
mysql> insert into uniqueBothColumnValueSameDemo values(60,30);
mysql> insert into uniqueBothColumnValueSameDemo values(60,30);
mysql> insert into uniqueBothColumnValueSameDemo values(60,50);

使用select语句显示表中的所有记录。查询如下-

mysql> select *from uniqueBothColumnValueSameDemo;

输出如下

+--------+-----------+
| UserId | UserValue |
+--------+-----------+
|     10 |        20 |
|     10 |        20 |
|     20 |        30 |
|     20 |        40 |
|     50 |        10 |
|     50 |        10 |
|     60 |        30 |
|     60 |        30 |
|     60 |        50 |
+--------+-----------+
9 rows in set (0.00 sec)

这是检查列唯一值的查询

mysql> SELECT DISTINCT UserId, UserValue
   -> FROM uniqueBothColumnValueSameDemo tbl1
   -> WHERE (SELECT count(DISTINCT UserValue)
   -> FROM uniqueBothColumnValueSameDemo tbl2
   -> WHERE tbl2.UserId = tbl1.UserId) = 1;

输出如下

+--------+-----------+
| UserId | UserValue |
+--------+-----------+
|     10 |        20 |
|     50 |        10 |
+--------+-----------+
2 rows in set (0.00 sec)
 类似资料:
  • 问题内容: 我想在我的MySQL表上添加一个唯一性约束。该表包含四列: 此约束必须检查对于new行,new和都未包含在或中。 例子 : 有没有办法定义这样的约束? 问题答案: 您可以通过触发器来做到这一点 注意: 由于您使用的MySQL版本缺少技巧,因此当找到具有相同地址的行时,违反对其中一列的约束。 这是 SQLFiddle 演示。取消注释最后一个插入语句之一,然后单击确定。这些插入不会成功。

  • 我想为某个度量的特定标记获取唯一值。例如,如果我有度量“metric\u name”有标记“tag\u name1”和“tag\u name2”: 我想获得“tag_name1”标记的唯一值:a、c、e 有点像:

  • 问题内容: 我想从以下列表中获取唯一值: 我需要的输出是: 此代码有效: 我应该使用更好的解决方案吗? 问题答案: 首先正确声明你的列表,以逗号分隔。你可以通过将列表转换为一组来获得唯一值。 如果进一步将其用作列表,则应执行以下操作将其转换回列表: 另一种可能(可能更快)的可能性是从头开始使用集合而不是列表。然后你的代码应为: 正如已经指出的那样,集合不保持原始顺序。如果需要,则应查找有序集合实现

  • 问题内容: 我想创建一个(或一组)所有出现在python列表中的唯一值的列表。我有这样的事情: 我想要以下内容: 我知道对于字符串列表,您只能使用set(aList),但是我无法弄清楚如何在列表列表中解决此问题,因为set(aList)会向我显示错误消息 我该如何解决? 问题答案:

  • 问题内容: 我有一个看起来像这样的列表列表: 删除重复列表的最佳方法是什么?使用上面的示例,我正在寻找会产生这种情况的代码: 我最初以为我可以使用,但这似乎不适用于列表列表。我还看到了一个使用的示例,但是代码对我来说并不完全清楚。谢谢您的帮助! 问题答案: uniq_animal_groups = set(map(tuple, animal_groups)) 尽管您将得到一组元组而不是一组列表,但

  • 问题内容: 我正在JPA中对userid列强制执行唯一性约束检查,这是对user表中的所有记录强制执行的。 我的要求是,特定组织内的用户ID必须唯一,而不是在所有组织中都唯一。 如何执行此类检查? 问题答案: 您可以为唯一约束指定多个字段,请尝试: 通过这样做,您的约束条件将检查userid和Organizationid的组合是否唯一。 最好的祝福,费边