小编wil*_*lco的帖子

用关系数据库解决地穴算术难题

假设您获得了密码算术拼图:

发送+更多=金钱

目标是用数字(0-9)代替字母,这样就可以解决这个问题.

我理解如何以数学方式解决问题,但我不知道如何使用关系数据库来解决这个问题.

如何设计架构来解决这个问题?

如何尝试解决此问题的SQL查询?

编辑: 有一些限制:

  1. 在整个过程中,相同的数字应该用于给定的字母.例如,如果您猜测字母E为"5",则E应在其出现的所有位置获得值"5".
  2. 不同的字母应该有不同的数字,例如,你不能为E和M指定"4".
  3. 没有数字(单词)可能有任何前导零

sql relational-database cryptarithmetic-puzzle

5
推荐指数
2
解决办法
781
查看次数

从SQL Join中删除镜像对

我有一个包含2个字段(名称,兴趣)的表,我希望找到所有具有相同兴趣的对,删除所有重复项和镜像对.

我能够使用以下SQL语句找到所有对并删除重复项:

SELECT P1.name AS name1, P2.name AS name2, P1.interest 
FROM Table AS P1, Table AS P2
WHERE P1.interest = P2.interest AND P1.name <> P2.name;
Run Code Online (Sandbox Code Playgroud)

但我不知道如何删除镜像对,即:

"wil","ben","databases"

"ben","wil","databases"

我试图使上面的语句成为名为Matches的视图,并尝试以下查询:

SELECT * FROM Matches
WHERE name2 <> (select name1 from Matches);
Run Code Online (Sandbox Code Playgroud)

但它不会删除所有镜像对.

sql relational-database

4
推荐指数
1
解决办法
2838
查看次数