Mercurial > dive4elements > river
comparison backend/src/main/java/org/dive4elements/river/model/CrossSection.java @ 6536:c155f8f57b7e
Initial improved query to find matching cross section.
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Wed, 03 Jul 2013 16:09:51 +0200 |
parents | 44ee7d26eb18 |
children | de62db0f2035 |
comparison
equal
deleted
inserted
replaced
6535:8a425ee702e3 | 6536:c155f8f57b7e |
---|---|
51 "ON csp.cross_section_line_id = csl.id " + | 51 "ON csp.cross_section_line_id = csl.id " + |
52 "WHERE csl.cross_section_id = :cs_id AND " + | 52 "WHERE csl.cross_section_id = :cs_id AND " + |
53 "km between :from_km AND :to_km " + | 53 "km between :from_km AND :to_km " + |
54 "ORDER BY csl.km, csl.id, csp.col_pos"; | 54 "ORDER BY csl.km, csl.id, csp.col_pos"; |
55 | 55 |
56 public static final String SQL_MIN_MAX = | |
57 "SELECT * FROM ( "+ | |
58 "SELECT cross_section_id, MIN(km) AS minkm, MAX(km) AS maxkm " + | |
59 "FROM cross_section_lines " + | |
60 "WHERE cross_section_id IN " + | |
61 " (SELECT id FROM cross_sections WHERE river_id = :river_id) " + | |
62 " GROUP BY cross_section_id" + | |
63 ") AS cs_ranges WHERE :km BETWEEN minkm AND maxkm ORDER BY :km - minkm "; | |
64 // Order by time interval missing. | |
65 | |
56 private Integer id; | 66 private Integer id; |
57 private River river; | 67 private River river; |
58 private TimeInterval timeInterval; | 68 private TimeInterval timeInterval; |
59 private String description; | 69 private String description; |
60 private List<CrossSectionLine> lines; | 70 private List<CrossSectionLine> lines; |