Yes, Calcite can do this. In CalciteConnectionProperty [1] there are separate 
properties QUOTED_CASING and UNQUOTED_CASING. Hopefully you can figure out how 
to set them.

Julian

[1] 
https://calcite.apache.org/javadocAggregate/org/apache/calcite/config/CalciteConnectionProperty.html

> On Dec 18, 2023, at 5:40 AM, Annepu, Sai Sriharsha 
> <[email protected]> wrote:
> 
> Hello Team,
> 
> We are attempting to use Calcite as a dialect specific SQL string generator / 
> optimizer for SQL queries systematically generated by Legend data management 
> platform (https://github.com/finos/legend).
> 
> In this context, I am trying to find if there exists a Calcite parser 
> configuration which allows case sensitive matching only if the identifier is 
> quoted, and also record that identifier as a quoted identifier to ensure it 
> remains the same in the final SQL generated by the dialect. quotedCasing and 
> unQuotedCasing configurations do help to some extent, but the identifier is 
> stored without quoting information.
> 
> As an example, in the below SQL, I would like to do case in-sensitive 
> matching (from schema) for people table and name column but case sensitive 
> match for date column. Also, post parsing, validation and optimization, the 
> final SQL should have quotes only for date column -
> 
>                SELECT p.name AS name, p."date" AS dt FROM people AS p
> 
> Does any such configuration exist? If it doesn't, can you please provide us 
> feedback on feasibility of the request and some pointers on where we can get 
> started if we want to contribute this feature.
> 
> Thanks,
> Sriharsha
> 
> ________________________________
> 
> Your Personal Data: We may collect and process information about you that may 
> be subject to data protection laws. For more information about how we use and 
> disclose your personal data, how we protect your information, our legal basis 
> to use your information, your rights and who you can contact, please refer 
> to: www.gs.com/privacy-notices<http://www.gs.com/privacy-notices>

Reply via email to