mysql - sql查找具有不同列值的行

标签 mysql sql-server

我的数据库表是(它有数百万条记录)

    sitename        rank     date
    facebook.com    1       2016-2-13
    gmail.com       2       2016-2-13
    yahoo.com       3       2016-2-13
    aol.com         4       2016-2-13
    facebook.com    1       2016-2-14
    gmail.com       2       2016-2-14
    yahoo.com       4       2016-2-14
    aol.com         3       2016-2-14

我想查找排名发生变化的网站。 在上图中,yahoo 和 aol 发生了变化。我尝试了几个查询,但无法使其正常工作。

最佳答案

它是一个简单的选择、分组依据并具有如下查询:

SELECT sitename,MAX(rank) - MIN(rank) as changed
FROM YourTable
GROUP BY sitename
HAVING COUNT(DISTINCT rank) > 1

关于mysql - sql查找具有不同列值的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35391745/

相关文章:

mysql - 使用 vb.net 在 sql 数据库中插入数字(如学生 ID、员工 ID)

mysql - 使用sqoop增量更新更新Hive表

mysql - 如何对连接中的数据执行 "where"子句

sql - 使用 SQL 查找冲突的日期间隔

sql-server - 变量在 SSIS For Each Loop 中没有更新

SQL Server : REPLACE function replace ' ' with ',' in string

sql-server - sql - 将多列(不同数据类型)转换为一列(一行为列)

mysql - 使用 Laravel 检索和编辑页面上的数据

mysql - 连接到 MySQL 数据库

php - 如何删除外键和主键