[RESOLVIDO] Consulta Funciona Mysql 6, mas não MariaDB 10

Tenho uma consulta que funciona Mysql 6 mas não no MariaDB 10, o problema está no sql…

Fiz teste diretamente no PhpMyadmin do MariaDB e não funciona…

Alguém pode me ajudar a fazer a alteração?

SELECT L.lcid,
       L.lcdtlanc,
       L.lcvencimento,
       L.lcdescricao,
       L.lcdocumento,
       L.lcvalor,
       L.lcdc,
       L.lctotalparcelas,
       L.lcdtpagto,
       L.lcvlrpago,
       L.contacorrente_ccid,
       CC.ccnome AS CONTA_CARTAO,
       L.formapag_fpid,
       FP.fpnome as  FORMAPAG,
       L.clifor_cfid,
       CF.cfnome AS CLIENTE,
       L.categoria_ctid,
       concat(ctcodigo,'-',ctnome) AS categoria,
       L.empresa_emid,
       E.emnome AS EMPRESA,
       L.lc_lancparc,
       L.lcnrparc,
       L.lctipo,
       L.lcacorrigir,
       CF.cfnome
FROM lancamento L INNER JOIN empresa E ON (L.empresa_emid = E.emid)
     INNER JOIN contacorrente CC ON (L.contacorrente_ccid = CC.ccid)
     inner join categoria ct on (L.categoria_ctid = ct.ctid)
     INNER JOIN formapag FP ON (L.formapag_fpid = FP.fpid)
     LEFT JOIN clifor CF ON (L.clifor_cfid = CF.cfid)
   where [v_where]

ORDER BY L.lcvencimento

Mas que erro dá?

Na v8 funciona perfeitamente,por isto que acredito ser quanto ao banco.
Quanto a coluna que diz não encontrada, ela existe e possui valores, ou seja, não funcionaria na v8 se fosse o real erro, imagino que seja a forma de declarar a variável global na ‘where’ mas não encontrei o seria para fucionar no MariaDB


erro_sql.jpg

Uma coisa que observei no teu WHERE é que o álias (L) está em minúsculo, enquanto que no restante do select está em maiúsculo. Veja se o banco está considerando o case sensitive para este caso, tipo assim:

L.lcdtpagto IS NULL AND L.lcvencimento…

Se o case sensitive estiver ligado dá pau mesmo.

Do manual:

ower_case_table_names

Description: If set to 0 (the default on Unix-based systems), table names and aliases and database names are compared in a case-sensitive manner. If set to 1 (the default on Windows), names are stored in lowercase and not compared in a case-sensitive manner. If set to 2 (the default on Mac OS X), names are stored as declared, but compared in lowercase.
Commandline: --lower-case-table-names[=#]
Scope: Global
Dynamic: No
Data Type: numeric
Default Value: 0 (Unix), 1 (Windows), 2 (Mac OS X)
Range: 0 to 2

Meu amigo, acertou em cheio… muito obrigado!!!

Obrigado!