标签: advanced-search

使用Hibernate Search进行高级搜索

在我的一个应用程序中,我将在多个字段/列上执行搜索.它是一个高级搜索,有超过20个字段,用户可以使用这些字段搜索结果.例如,用户可以基于搜索预订

  1. 预订ID
  2. 乘客姓名
  3. 乘客年龄
  4. 从位置
  5. 到位置
  6. 预订状态
  7. 航空公司的名称

和13个这样的领域.

我想知道是否

  1. Hibernate Search可以而且应该在这里使用吗?如果是这样,怎么样?我无法找到使用Hibernate Search进行这种复杂搜索的示例.

  2. 我可以简单地使用Hibernate而不是Hibernate搜索,并根据参数的数量设计多线程搜索.这是个好主意吗?

  3. 这里可以使用Hibernate Filters吗?

有人可以提供输入或参考链接吗?

hibernate hibernate-search advanced-search

7
推荐指数
1
解决办法
3730
查看次数

MySQL选择列如果不为空只

我有这个 mysql 代码:

SELECT firstname, lastname, age, gender from persons WHERE id = 1;
Run Code Online (Sandbox Code Playgroud)

展示:

> firstname: Marlon 
> 
> lastname: Null
> 
> age: 26
> 
> gender: male
Run Code Online (Sandbox Code Playgroud)

我想做的是:

SELECT IF NULL DONT SELECT(firstname), IF NULL DONT SELECT(lastname), IF NULL DONT SELECT(age), IF NULL DONT SELECT(gender) from persons WHERE id = 1;
Run Code Online (Sandbox Code Playgroud)

展示:

> firstname: Marlon 
> 
> age: 26
> 
> gender: male
Run Code Online (Sandbox Code Playgroud)

姓氏未显示,因为它为空

mysql advanced-search

7
推荐指数
1
解决办法
8487
查看次数

如何在Magento搜索中重置addAttributeToFilter

我在循环中获取addAttributeToFilter函数以在Magento中运行时遇到问题.我在我的商店中有测试数据,以支持搜索以下所有数据;

$attributeSelections=array( array('size' => 44, 'color' => 67, 'manufacturer' => 17),
                        array('size' => 43, 'color' => 69, 'manufacturer' => 17),
                        array('size' => 42, 'color' => 70, 'manufacturer' => 17));
Run Code Online (Sandbox Code Playgroud)

我的代码可以搜索这些组合;

foreach ($attributeSelections as $selection) {
    $searcher = Mage::getSingleton('catalogsearch/advanced')->getProductCollection();
    foreach ($selection as $k => $v) {
        $searcher->addAttributeToFilter("$k", array('eq' => "$v"));
        echo "$k: $v<br />";
    }
    $result=$searcher->getData();
    print_r($result);
}
Run Code Online (Sandbox Code Playgroud)

这个循环给出了以下结果(稍微消毒了veiwing乐趣);

size: 44
color: 67
manufacturer: 17
Array ( [0] => Array ( [entity_id] => 2965 [entity_type_id] => 4 [attribute_set_id] => 28 [type_id] …
Run Code Online (Sandbox Code Playgroud)

php loops magento advanced-search

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

BST节点的所有父母?

使用递归函数(预订)打印二进制搜索树(BST).我需要打印当前节点的所有父节点(路径根目录).
可以使用辅助数据结构(例如,我的代码中的路径),但我不想保留node-> path来存储路径.

      4                           
     / \  
    /   \  
   2     6
  / \   / \
 1   3  5  7  
Run Code Online (Sandbox Code Playgroud)

假设我使用预顺序遍历在行中打印节点:

NODE    PATH  
4       4  
2       4,2  
1       4,2,1
3       4,2,3       
6       4,6
5       4,6,5
7       4,6,7  
Run Code Online (Sandbox Code Playgroud)

我做了如下:工作正常!
路径以此代码中的0(零)值结束.BST中没有节点值为0.

void printpath(int* mypath){
   while(*mypath)  
      printf("%d ", *mypath++);  
}

void preorder(struct tree *p, int* path){
    int *mypath = calloc(sizeof(path)/sizeof(int) + 1 , sizeof(int*));
    int* myp=mypath;

    if(p!=NULL){  
       while( *myp++ = *path++ );  
       --myp;
       *myp=p->data;
       *(myp+1)=0;

        printf("%d PATH ",p->data);
        printpath(mypath); …
Run Code Online (Sandbox Code Playgroud)

c c++ algorithm advanced-search data-structures

3
推荐指数
1
解决办法
1025
查看次数

使用node js搜索字符串mongodb中的任何单词

我想在带有 Mongo DB 的 Node JS 项目中创建高级搜索。我在数据库中创建了一个作为搜索键的字段。用户可以在文本框中键入任何单词,我想在字符串中匹配该单词并获取结果。下面是我的数据库结构和代码。我的代码仅匹配字符串的第一个单词,而不是在所有字符串中搜索。

DB : 
{
"_id": ObjectId("001"),
 "searchkey": "Test Product Test Product T-shirt Half sleeves Adidas"
} 
{
"_id": ObjectId("123"), 
 "searchkey": "boy test Product Test Product T-shirt Half sleeves Nike"
} 
{
"_id": ObjectId("456"), 
 "searchkey": "girl test Product Summer Product T-shirt full sleeves Adidas"
} 
{
"_id": ObjectId("789"), 
 "searchkey": "any product any Product any Product T-shirt full sleeves Adidas"
} 
{
"_id": ObjectId("1010"), 
 "searchkey": "woodland Product woodland Product T-shirt Half sleeves woodland"
} 
{
"_id": …
Run Code Online (Sandbox Code Playgroud)

javascript search mongodb node.js advanced-search

3
推荐指数
1
解决办法
5793
查看次数

高级搜索的 Alfresco 共享自定义

我正在尝试修改 share-config-custom.xml 以便我可以通过以下属性搜索电子邮件:

           <!-- cm:emailed aspect -->
           <show id="cm:originator" />
           <show id="cm:addressee" />
           <show id="cm:addressees" />
           <show id="cm:sentdate" />
           <show id="cm:subjectline" />
Run Code Online (Sandbox Code Playgroud)

这是我的 share-config-custom.xml:

    <config evaluator="model-type" condition="cm:content">
    <forms> 
        <form label="Mails">
            <field-visibility>
               <show id="cm:originator" />
               <show id="cm:addressee" />
               <show id="cm:addressees" />
               <show id="cm:sentdate" />
               <show id="cm:subjectline" />
            </field-visibility>
        </form>
    </forms>
   </config>

  <config evaluator="string-compare" condition="AdvancedSearch">
  <advanced-search>
     <!-- Forms for the advanced search type list -->
     <forms>
        <!--
           The 'form' config element contains the name of the model type
           of the form to …
Run Code Online (Sandbox Code Playgroud)

alfresco advanced-search alfresco-share

2
推荐指数
1
解决办法
2361
查看次数