我有一个包含两列的表,假设是 FirstName 和 LastName。我需要得到另一个表,对于第一个中的每一对 FirstName,它都包含一个共同的 LastName 的计数。
这在 SQL 中是否可行?
如果这会影响查询效率,那么姓氏的唯一性要比名字多得多。
一个玩具示例,输入:
FirstName, LastName
John, Smith
John, Doe
Jane, Doe
输出:
FirstName1, FirstName2, CommonLastNames
John, John, 2
John, Jane, 1
Jane, Jane, 1
Jane, John, 1
由于此关系是自反和对称的,因此如果结果只是其中一个三角形(例如,对角线上方的那个)就可以了。