When I run query :
Code: Select all
groups_query = Devart.Data.Linq.CompiledQuery.Compile(
(GAORCL2.GAORCL2 ga, string language) =>
from grp in ga.GroupDefs
join label in ga.Labels on
new { LABEL = grp.GRD_NAME_LBL, LANGUAGE = language } equals
new { LABEL = label.LBL_LABEL, LANGUAGE = label.LBL_LANG } into labels
from label in labels.DefaultIfEmpty()
select Util.MakePair(grp.GRD_GROUP, new GroupDefData(label == null ? String.Empty : label.LBL_TEXT))
);
Code: Select all
SELECT t1.GRD_GROUP,
(CASE
WHEN (t2.LBL_LABEL IS NULL) AND (t2.LBL_LANG IS NULL) THEN :p1
ELSE t2.LBL_TEXT
END) AS C1
FROM GRADS3_USER.GROUP_DEFS t1
LEFT OUTER JOIN GRADS3_USER.LABELS t2 ON ((t1.GRD_NAME_LBL = t2.LBL_LABEL) OR ((t1.GRD_NAME_LBL IS NULL) AND (t2.LBL_LABEL IS NULL))) AND (:p0 = t2.LBL_LANG)
- SQL> desc labels;
Name Null? Type
----------------------------------------- -------- -----------------
LBL_LABEL NOT NULL NVARCHAR2(32)
LBL_LANG NOT NULL NVARCHAR2(2)
LBL_TEXT NOT NULL NVARCHAR2(2000)
SQL> desc group_defs;
Name Null? Type
----------------------------------------- -------- --------------
GRD_GROUP NOT NULL NUMBER(38)
GRD_NAME_LBL NOT NULL NVARCHAR2(32)
- SQL> select * from nls_database_parameters;
PARAMETER VALUE
------------------------------ -------------------------------
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTERS .,
NLS_CHARACTERSET WE8MSWIN1252
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AMERICAN
NLS_SORT BINARY
NLS_TIME_FORMAT HH.MI.SSXFF AM
PARAMETER VALUE
------------------------------ -------------------------------
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY $
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_RDBMS_VERSION 10.2.0.1.0
20 rows selected.