Revision ef2701d9
Added by Patrick Plitzner about 7 years ago
src/main/java/eu/etaxonomy/cdm/vaadin/util/CdmQueryFactory.java | ||
---|---|---|
77 | 77 |
"LEFT OUTER JOIN DefinedTermBase dtb2 on tnb.rank_id = dtb2.id " + |
78 | 78 |
"WHERE tn.id IN ("+ idString +") AND tb.DTYPE = 'Taxon'" ; |
79 | 79 |
|
80 |
String GROUP_BY = " GROUP BY tn.id "; |
|
81 |
|
|
82 | 80 |
String ORDER_BY = " ORDER BY tb.titleCache "; |
83 | 81 |
|
84 | 82 |
String SELECT_QUERY= |
... | ... | |
93 | 91 |
for(String term : termList){ |
94 | 92 |
if(count == 1){ |
95 | 93 |
SELECT_QUERY= SELECT_QUERY + |
96 |
"MAX( IF(dtb1.titleCache = '"+ term +"', dtb.titleCache, NULL) ) as '"+ term +"' " ;
|
|
94 |
"IF(dtb1.titleCache = '"+ term +"', dtb.titleCache, NULL) as '"+ term +"' " ;
|
|
97 | 95 |
}else{ |
98 | 96 |
SELECT_QUERY= SELECT_QUERY + |
99 |
"MAX( IF(dtb1.titleCache = '"+ term +"', dtb.titleCache, NULL) ) as '"+ term +"'," ;
|
|
97 |
"IF(dtb1.titleCache = '"+ term +"', dtb.titleCache, NULL) as '"+ term +"'," ;
|
|
100 | 98 |
} |
101 | 99 |
count--; |
102 | 100 |
} |
103 |
SELECT_QUERY= SELECT_QUERY + FROM_QUERY + GROUP_BY + ORDER_BY;
|
|
101 |
SELECT_QUERY= SELECT_QUERY + FROM_QUERY + ORDER_BY; |
|
104 | 102 |
String COUNT_QUERY = "SELECT count(DISTINCT tb.id)" + FROM_QUERY; |
105 | 103 |
// String CONTAINS_QUERY = "SELECT * FROM TaxonNode tn WHERE tn.id = ?"; |
106 | 104 |
String CONTAINS_QUERY = "SELECT * FROM TaxonBase tb WHERE tb.uuid = ?"; |
Also available in: Unified diff
ref #5458 streamlined SQL query