1 5 package com.teamkonzept.webman.refsel.db.queries; 6 7 import java.sql.*; 8 9 import com.teamkonzept.db.*; 10 import com.teamkonzept.webman.mainint.DatabaseDefaults; 11 12 17 public class TKWMDBRSSisters extends TKPrepQuery implements DatabaseDefaults { 18 19 public final static boolean IS_PREPARED = 20 true; 21 22 public final static String [] PARAM_ORDER = 23 {SITE_NODE_ID, SITE_NODE_ID, SITE_NODE_ID, SITE_NODE_ID, SITE_NODE_ID}; 24 25 public final static Object [][] PARAM_TYPES = 26 null; 27 28 public final static boolean[] SET_RELEVANTS = 29 { true }; 30 31 public final static String SQL_STRING = 32 " SELECT INNER.LEFT_NR LEFT_NR, INNER.DOCUMENT_SHORTNAME DOCUMENT_SHORTNAME, JOIN_NAME.DOCUMENT_NAME DOCUMENT_NAME " 33 + " FROM " 34 + " ( " 35 + " SELECT MAX(ST.LEFT_NR) LEFT_NR, SD.DOCUMENT_SHORTNAME " 36 + " FROM SITE_TREE ST, SITE_DOCUMENT SD " 37 + " WHERE " 38 + " ST.SITE_NODE_ID = SD.SITE_NODE_ID " 39 + " AND " 40 + " ( " 41 + " ST.LEFT_NR <= (SELECT LEFT_NR FROM SITE_TREE WHERE SITE_NODE_ID = ? ) " 42 + " AND " 43 + " ST.RIGHT_NR >= (SELECT RIGHT_NR FROM SITE_TREE WHERE SITE_NODE_ID = ? ) " 44 + " ) " 45 + " AND " 46 + " ( " 47 + " (SELECT COUNT(*) FROM SITE_TREE " 48 + " WHERE " 49 + " ( LEFT_NR BETWEEN ST.LEFT_NR AND (SELECT LEFT_NR FROM SITE_TREE WHERE SITE_NODE_ID = ? )) " 50 + " AND " 51 + " ( RIGHT_NR BETWEEN (SELECT RIGHT_NR FROM SITE_TREE WHERE SITE_NODE_ID = ?) AND ST.RIGHT_NR) " 52 + " ) " 53 + " BETWEEN SD.INHERIT_BEGIN_LEVEL AND SD.INHERIT_END_LEVEL " 54 + " OR " 55 + " SD.SITE_NODE_ID = ? " 56 + " OR SD.INHERIT_END_LEVEL = " + INHERIT_INFINITE 57 + " ) " 58 + " GROUP BY SD.DOCUMENT_SHORTNAME " 59 + " ) " 60 + " INNER, " 61 + " (SELECT LEFT_NR, DOCUMENT_NAME, DOCUMENT_SHORTNAME " 62 + " FROM SITE_DOCUMENT, SITE_TREE " 63 + " WHERE SITE_DOCUMENT.SITE_NODE_ID = SITE_TREE.SITE_NODE_ID " 64 + " ) " 65 + " JOIN_NAME " 66 + " WHERE " 67 + " INNER.LEFT_NR = JOIN_NAME.LEFT_NR " 68 + " AND " 69 + " INNER.DOCUMENT_SHORTNAME = JOIN_NAME.DOCUMENT_SHORTNAME " 70 + " ORDER BY LEFT_NR " 71 ; 72 73 74 75 public void initQuery(Connection con) { 76 super.initQuery( 77 con, 78 IS_PREPARED, 79 PARAM_ORDER, 80 PARAM_TYPES, 81 SET_RELEVANTS, 82 SQL_STRING ); 83 } 84 } 85 86 | Popular Tags |