Php 步进搜索算法。从N中选择一个,重复,重复,参见最终结果

Php 步进搜索算法。从N中选择一个,重复,重复,参见最终结果,php,mysql,sql,algorithm,search,Php,Mysql,Sql,Algorithm,Search,我想知道如何考虑搜索系统,它要求你做出某些选择来查看最终结果。我说的是select表单,您可以根据所选内容进行操作,然后查看结果 下面是我所说的一个随机例子。想象 Initial select | Step 1 | Step 2 | Step 3 | Step4 --------------------------------------------------------------------------

我想知道如何考虑搜索系统,它要求你做出某些选择来查看最终结果。我说的是
select
表单,您可以根据所选内容进行操作,然后查看结果

下面是我所说的一个随机例子。想象

Initial select | Step 1 | Step 2 | Step 3 | Step4 --------------------------------------------------------------------------------------------------- A | -- D or E or F | -- K or L or M or N | -- RESULT | B | -- D or H or I | -- O or P or L or Q or R | -- RESULT | C | -- D or I or J | -- Q or R or L or S or U or V | -- W or X or W | -- RESULT 初始选择|步骤1 |步骤2 |步骤3 |步骤4 --------------------------------------------------------------------------------------------------- A |--D或E或F |--K或L或M或N |--结果| B |--D或H或I |--O或P或L或Q或R |--结果| C |--D或I或J |--Q或R或L或S或U或V |--W或X或W |--结果 初始选择在开始时是一个
select
表单,并在继续操作时为您提供越来越相关的
select
-s,最后为您提供最终结果

像这样的表格是怎样制作的?我应该如何在SQL中组织数据

我可以使用PHP、Ruby、JavaScript、SQL、NoSQL、HTML5/CSS。请给我一个指示,一个阅读链接或一些东西,将使我能够有效地做这样的事情

更新


也许你可以告诉我这个系统的名字,这样我就可以自己研究了。为了理解我,我应该将这种搜索称为什么?

您可以通过自引用外键的方式定义选项,例如:

create table decisions(
  id int unsigned not null auto_increment,
  parent_id int unsigned,
  primary key (id),
  constraint fk_decisions_parent_id foreign key (parent_id) references decisions (id)
    on delete cascade on update cascade
)engine=innodb;
要根据决策查找选项,您需要进行如下查询:

 select *
 from decisions
 where parent_id = [decision ID];

如果没有返回任何选项,那么您已经得到了“结果”。

决策树,也许是这样?这里有点太抽象了。