本帖最后由 〇〇 于 2022-12-9 17:58 编辑
按照前一帖构造了4个字母3行取2
with t(i) as(values
([0, 0, 0]),
([0, 1, 1]),
([0, 2, 2]),
([0, 3, 3]),
([1, 0, 1]),
([1, 1, 2]),
([1, 2, 3]),
([1, 3, 0]),
([2, 0, 2]),
([2, 1, 3]),
([2, 2, 0]),
([2, 3, 1])),
p as(
select a.i n1,b.i n2,count(*) from t a,t b , generate_series(1,3)q(x) where a.i[x]<>b.i[x] group by a.i,b.i having count(*)>=2)
select count(*) from p;
┌──────────────┐
│ count_star() │
│ int64 │
├──────────────┤
│ 132 │
└──────────────┘
构造了5个字母3行取2
with t(i) as(values
([0, 0, 0]),
([0, 1, 1]),
([0, 2, 2]),
([0, 3, 3]),
([0, 4, 4]),
([1, 0, 1]),
([1, 1, 2]),
([1, 2, 3]),
([1, 3, 4]),
([1, 4, 0]),
([2, 0, 2]),
([2, 1, 3]),
([2, 2, 4]),
([2, 3, 0]),
([2, 4, 1]),
([3, 0, 3]),
([3, 1, 4]),
([3, 2, 0]),
([3, 3, 1]),
([3, 4, 2]),
([4, 0, 4]),
([4, 1, 0]),
([4, 2, 1]),
([4, 3, 2]),
([4, 4, 3])),
p as(
select a.i n1,b.i n2,count(*) from t a,t b , generate_series(1,3)q(x) where a.i[x]<>b.i[x] group by a.i,b.i having count(*)>=2)
select count(*) from p;
┌──────────────┐
│ count_star() │
│ int64 │
├──────────────┤
│ 600 │
└──────────────┘
|