2012-08-24 181 views
1

我有以下列出的Prolog:如何从数据库检索值?

fruit(banana, yellow, curvy, 4). 
fruit(apple, green, round, 2). 
fruit(kiwifruit, green, round, 7). 
fruit(mango, orange, round, 1). 
fruit(watermelon, red, round, 8). 

而且我希望有一个查询将返回所有的绿色果实。我该怎么做呢?我玩过findall/3 and bagof/3,但我无法弄清楚。

回答

1

使用以下查询:

fruit(Fruit, green, Shape, Count). 

这将返回所有的水果/ 4规则,有“绿色”的第二个值,并且将你的价值观为第1,第3,第4和值。

+0

辉煌,那就是我以前的样子。我知道我在想这件事。干杯。 – Matt

+0

有没有办法为该查询添加更多参数?例如所有的绿色和圆形水果? – Matt

+0

它不会让我编辑上面的评论,但我也排除了这一点。我认为“水果(F,绿色,圆形,C)”不起作用,但我只是有一个错字。再次感谢 – Matt