CBR-to-SQL: Rethinking Retrieval-based Text-to-SQL using Case-based Reasoning in the Healthcare Domain

Hung Nguyen, Hans Moen, Pekka Marttinen
3/5/2026
cs.IRcs.AIcs.CL

No official code found. Best implementation: Hungreeee/CBR-to-SQL (0 stars, last commit 2026-04-14).

Abstract

Extracting insights from Electronic Health Record (EHR) databases often requires SQL expertise, creating a barrier for healthcare decision-making and research. While a promising approach is to use Large Language Models (LLMs) to translate natural language questions to SQL via Retrieval-Augmented Generation (RAG), adapting this approach to the medical domain is non-trivial. Standard RAG relies on single-step retrieval from a static pool of examples, which struggles with the variability and noise of medical terminology and jargon. This often leads to anti-patterns such as expanding the task demonstration pool to improve coverage, which in turn introduces noise and scalability problems. To address this, we introduce CBR-to-SQL, a framework inspired by Case-Based Reasoning (CBR). It represents question-SQL pairs as reusable, abstract case templates and utilizes a two-stage retrieval process that first captures logical structure and then resolves relevant entities. Evaluated on MIMICSQL, CBR-to-SQL achieves state-of-the-art logical form accuracy and competitive execution accuracy. More importantly, it demonstrates higher sample efficiency and robustness than standard RAG approaches, particularly under data scarcity and retrieval perturbations.

View on arXivView PDF

Code Implementations(1)

Codebase for "CBR-to-SQL: Rethinking Retrieval-based Text-to-SQL using Case-based Reasoning in the Healthcare Domain" (under review)

01PythonApr 4, 20256 months ago

Similar Papers

Cite this paper

@article{nguyen2026cbrtosql,
  title  = {CBR-to-SQL: Rethinking Retrieval-based Text-to-SQL using Case-based Reasoning in the Healthcare Domain},
  author = {Hung Nguyen and Hans Moen and Pekka Marttinen},
  year   = {2026},
  eprint = {2603.05569},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2603.05569v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2603.05569.svg)](https://codeofpaper.com/paper/2603.05569)

Discussion