У меня есть один data_source, возвращающий 2 строки из запроса с одной строкой с 8 символами и другой с 11 символами.Я действительно уверен, что одна из строк имеет 8 символов, потому что я явно поместил ее в условие where (что-то вроде этого. Где name = 'ftcc_ppp'). Правда в том, что службы отчетов добавляют некоторые дополнительные пустые символы и исправляютдлина строки до максимума (длина строки всего набора результатов без условия where).
Я хотел сделать несколько фильтров и получал неправильные результаты, потому что строка была не с 8 символами, а вместо этогос 11 символами (8 + 3 пробела).
Условие where выполняется в подзапросе, который содержит в этом поле одну строку с 8 символами, а другую с 11 символами (ftcc_ppp и ftcc_ppp_lx).
Почему службы отчетности действуют так?Любое объяснение?
Спасибо всем
РЕДАКТИРОВАТЬ: Код запроса:
BEGIN
DECLARE @dtDate DATETIME
DECLARE @lastDay DATE;
DECLARE @firstDay DATE;
DECLARE @currentDate DATE;
DECLARE @month_table AS TABLE(DATA DATE);
SET @dtDate = @DATA;
SET @lastDay = CAST(DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,@dtDate)+1,0)) AS DATE)
SET @firstDay = DATEADD(d,-DAY(@dtDate)+1,@dtDate);
SET @currentDate = @firstDay;
WHILE @currentDate <> dateadd(d,1,@lastDay)
BEGIN
PRINT @currentDate;
INSERT INTO @month_table VALUES(@currentDate);
SET @currentDate = dateadd(d,1,@currentDate);
END
SELECT * FROM (
SELECT DATA,motivo,SUM(total) AS total,CAST(campanha AS VARCHAR(11)) AS campanha,[TYPE]
FROM [Client].[dbo].[ftcc_ppp_motivo_nelegivel_totais]
GROUP BY DATA,motivo,campanha,[TYPE]
UNION ALL
SELECT DATA,motivo,0 AS total,CAST('ftcc_ppp' AS VARCHAR(11)) campanha,'LOP' AS [TYPE]
FROM @month_table
CROSS JOIN dbo.ftcc_ppp_motivo_nelegivel_keys
UNION ALL
SELECT DATA,motivo,0 AS total,CAST('ftcc_ppp' AS VARCHAR(11)) campanha,'ALOP' AS [TYPE]
FROM @month_table
CROSS JOIN dbo.ftcc_ppp_motivo_nelegivel_keys
UNION ALL
SELECT DATA,motivo,0 AS total,CAST('ftcc_ppp_lx' AS VARCHAR(11)) campanha,'CARD' AS [TYPE]
FROM @month_table
CROSS JOIN dbo.ftcc_ppp_motivo_nelegivel_keys
) xpto
WHERE campanha = 'ftcc_ppp'
END