2011-03-31 57 views
0

我目前有一个数据库与列A和列B.我想获得的数据,并从A到B的边缘。我没有问题。问题是,许多A可以参考1B,我不想在图中有重复的A。如何解决我的下列问题?数据库 - >图

我正在使用PHP + js。

+0

这是高度分贝特定的。你使用什么数据库? SQL或图形?无论哪种情况,都有很多用于绘制数据的良好jQuery库。还有用图形生成图片的PHP-libs。除此之外,很难说出你的意思。 – Kebman 2013-04-09 17:03:38

回答

0

你的问题很混乱你的措辞。 “从A到B的优势”是什么意思?至于没有重复的A,你的意思是你不希望重复的行首先进入你的数据库?你的意思是你想在数据库中有重复的A,但你只希望其中的一个出现在图中?让我彻底困惑。也许一个现场的例子会帮助我们找出你想要的帮助?

+0

对不起,这里是一个例子: 衬衫 - >裤子 包包 - >裤子 鞋子 - >袜子 这里,衬衫和包包都指裤子。我不想有两个单独的裤子节点。应该有2个节点(包和衬衫),这些节点具有对单节点裤子的定向边缘。我希望我的例子清除了困惑:) – user684992 2011-03-31 03:17:19

0

一个很晚的答复,但仍然。通常,人们会用指针来做到这一点。 PHP没有指针,而是参考了一些所谓的通:http://php.net/manual/en/language.references.pass.php

一个例子是这样的:

$shirt = new Node('shirt'); 
$pants = new Node('pants'); 
$bag = new Node('bag'); 

$shirt->relate_to($panths); 
$bag->relate_to($panths); 

class Node { 
    protected $type; 
    protected $relations; 

    public function relate_to(Node &$node) { 
    $this->relations[$node->id] = &$node; 
    } 
} 

,甚至有可能使定向关系是这样的:

public function relate(node &$from, node &$to){ 
      $tmp=new relationship($from, $to); 
      $from->relations[$to->id]=&$tmp; 
      $to->relations[$from->id]=&$tmp; 
    }