Database specific search options

In this document the database specific search options are summarized and their usage is shown in different search interfaces.

Result table

Sets the result table that will contain the cd_id of hits. In case of searching similar structures, the similarity value is also stored in column similarity.

MolSearch API
Not applicable.
JChemSearch API
JChemSearch searcher = new JChemSearch();
searcher.setResultTable
(tableName);
JChem Oracle Cartridge
Not applicable.
jscearch command line tool
Not applicable.

SQL SELECT statement for pre-filtering

MolSearch API
Not applicable.
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setFilterQuery(filterQueryString);
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
 
Sets the SQL query for filtering. The result should contain cd_id values of the desired records of the structure table.
JChem Oracle Cartridge
Use the jc_compare operator with filterQuery:select-statement
 
Example: The following SQL statement performs a search on a subset of the structures stored in the JChem-generated table jc_nci_10m and returns the number of structures in the subset which contain aromatic ring. The subset considered for the search is specified to belong to project #502:
SELECT count(*) FROM jc_nci_10m WHERE jc_compare(structure, 'c1ccccc1', 'sep=! t:s!filterQuery:select cd_id from jc_nci_10m where projid = 502') = 1
 
The query in select-statement will be first executed, then the search will be performed only on the rows returned by the select-statement. select-statement must return a single column containing the identifier of the rows to be included in the search. The row identifier is cd_id in case of JChem tables and rowid in case of plain Oracle tables.
jscearch command line tool
Not applicable.