我有一个包含两列的表,比如说名字和姓氏。我需要另一个表,其中对于第一对中的每一对名字,都包含共同姓氏的计数。
这在 SQL 中可行吗?
如果姓氏的唯一性会影响查询的效率,则姓氏的唯一性比名字的唯一性要多得多。
一个玩具示例,输入:
FirstName, LastName
John, Smith
John, Doe
Jane, Doe
Run Code Online (Sandbox Code Playgroud)
输出:
FirstName1, FirstName2, CommonLastNames
John, John, 2
John, Jane, 1
Jane, Jane, 1
Jane, John, 1
Run Code Online (Sandbox Code Playgroud)
由于这种关系是自反且对称的,因此如果结果只是三角形之一(例如,对角线上方的三角形)也没关系。
vertica ×1