sharkiefff/RBAC-Text2SQL-Benchmark huggingface dataset:
##Instruction:
Database: insurance_fnol
Total Tables: 7
Total Columns: 22

Table Schemas:

insurance_fnol contains tables such as Customers, Services, Available_Policies, Customers_Policies, First_Notification_of_Loss, Claims, Settlements.
Table Customers has columns such as Customer_ID, Customer_name.
Customer_ID is the primary key.
Table Services has columns such as Service_ID, Service_name.
Service_ID is the primary key.
Table Available_Policies has columns such as Policy_ID, policy_type_code, Customer_Phone.
Policy_ID is the primary key.
Table Customers_Policies has columns such as Customer_ID, Policy_ID, Date_Opened, Date_Closed.
Customer_ID is the primary key.
Table First_Notification_of_Loss has columns such as FNOL_ID, Customer_ID, Policy_ID, Service_ID.
FNOL_ID is the primary key.
Table Claims has columns such as Claim_ID, FNOL_ID, Effective_Date.
Claim_ID is the primary key.
Table Settlements has columns such as Settlement_ID, Claim_ID, Effective_Date, Settlement_Amount.
Settlement_ID is the primary key.
The Policy_ID of Customers_Policies is the foreign key of Policy_ID of Available_Policies.
The Customer_ID of Customers_Policies is the foreign key of Customer_ID of Customers.
The Customer_ID of First_Notification_of_Loss is the foreign key of Customer_ID of Customers_Policies.
The Policy_ID of First_Notification_of_Loss is the foreign key of Policy_ID of Customers_Policies.
The Service_ID of First_Notification_of_Loss is the foreign key of Service_ID of Services.
The FNOL_ID of Claims is the foreign key of FNOL_ID of First_Notification_of_Loss.
The Claim_ID of Settlements is the foreign key of Claim_ID of Claims.

##Role Access Policy (Column-Level):
Role: UnderwritingAnalyst
Accessible Columns: Customers: Customer_ID, Customer_name; Available_Policies: ALL COLUMNS; Customers_Policies: ALL COLUMNS; First_Notification_of_Loss: FNOL_ID, Customer_ID, Policy_ID, Service_ID; Claims: Claim_ID, FNOL_ID, Effective_Date

Based on the above schema and your role's column-level access policy, generate a SQL query to answer the question. If your role does not have access to the required columns, respond with: "Sorry, I cannot answer."


Question: Count the total number of policies used by the customer named "Dayana Robel".
Answer: SELECT count(*) FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id WHERE t1.customer_name  =  "Dayana Robel"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT count(*) FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id WHERE t1.customer_name  =  "Dayana Robel"
##Instruction:
Database: insurance_fnol
Total Tables: 7
Total Columns: 22

Table Schemas:

insurance_fnol contains tables such as Customers, Services, Available_Policies, Customers_Policies, First_Notification_of_Loss, Claims, Settlements.
Table Customers has columns such as Customer_ID, Customer_name.
Customer_ID is the primary key.
Table Services has columns such as Service_ID, Service_name.
Service_ID is the primary key.
Table Available_Policies has columns such as Policy_ID, policy_type_code, Customer_Phone.
Policy_ID is the primary key.
Table Customers_Policies has columns such as Customer_ID, Policy_ID, Date_Opened, Date_Closed.
Customer_ID is the primary key.
Table First_Notification_of_Loss has columns such as FNOL_ID, Customer_ID, Policy_ID, Service_ID.
FNOL_ID is the primary key.
Table Claims has columns such as Claim_ID, FNOL_ID, Effective_Date.
Claim_ID is the primary key.
Table Settlements has columns such as Settlement_ID, Claim_ID, Effective_Date, Settlement_Amount.
Settlement_ID is the primary key.
The Policy_ID of Customers_Policies is the foreign key of Policy_ID of Available_Policies.
The Customer_ID of Customers_Policies is the foreign key of Customer_ID of Customers.
The Customer_ID of First_Notification_of_Loss is the foreign key of Customer_ID of Customers_Policies.
The Policy_ID of First_Notification_of_Loss is the foreign key of Policy_ID of Customers_Policies.
The Service_ID of First_Notification_of_Loss is the foreign key of Service_ID of Services.
The FNOL_ID of Claims is the foreign key of FNOL_ID of First_Notification_of_Loss.
The Claim_ID of Settlements is the foreign key of Claim_ID of Claims.

##Role Access Policy (Column-Level):
Role: UnderwritingAnalyst
Accessible Columns: Customers: Customer_ID, Customer_name; Available_Policies: ALL COLUMNS; Customers_Policies: ALL COLUMNS; First_Notification_of_Loss: FNOL_ID, Customer_ID, Policy_ID, Service_ID; Claims: Claim_ID, FNOL_ID, Effective_Date

Based on the above schema and your role's column-level access policy, generate a SQL query to answer the question. If your role does not have access to the required columns, respond with: "Sorry, I cannot answer."


Question: What is the name of the customer who has the most policies listed?
Answer: SELECT t1.customer_name FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id GROUP BY t1.customer_name ORDER BY count(*) DESC LIMIT 1
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT t1.customer_name FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id GROUP BY t1.customer_name ORDER BY count(*) DESC LIMIT 1
##Instruction:
Database: insurance_fnol
Total Tables: 7
Total Columns: 22

Table Schemas:

insurance_fnol contains tables such as Customers, Services, Available_Policies, Customers_Policies, First_Notification_of_Loss, Claims, Settlements.
Table Customers has columns such as Customer_ID, Customer_name.
Customer_ID is the primary key.
Table Services has columns such as Service_ID, Service_name.
Service_ID is the primary key.
Table Available_Policies has columns such as Policy_ID, policy_type_code, Customer_Phone.
Policy_ID is the primary key.
Table Customers_Policies has columns such as Customer_ID, Policy_ID, Date_Opened, Date_Closed.
Customer_ID is the primary key.
Table First_Notification_of_Loss has columns such as FNOL_ID, Customer_ID, Policy_ID, Service_ID.
FNOL_ID is the primary key.
Table Claims has columns such as Claim_ID, FNOL_ID, Effective_Date.
Claim_ID is the primary key.
Table Settlements has columns such as Settlement_ID, Claim_ID, Effective_Date, Settlement_Amount.
Settlement_ID is the primary key.
The Policy_ID of Customers_Policies is the foreign key of Policy_ID of Available_Policies.
The Customer_ID of Customers_Policies is the foreign key of Customer_ID of Customers.
The Customer_ID of First_Notification_of_Loss is the foreign key of Customer_ID of Customers_Policies.
The Policy_ID of First_Notification_of_Loss is the foreign key of Policy_ID of Customers_Policies.
The Service_ID of First_Notification_of_Loss is the foreign key of Service_ID of Services.
The FNOL_ID of Claims is the foreign key of FNOL_ID of First_Notification_of_Loss.
The Claim_ID of Settlements is the foreign key of Claim_ID of Claims.

##Role Access Policy (Column-Level):
Role: UnderwritingAnalyst
Accessible Columns: Customers: Customer_ID, Customer_name; Available_Policies: ALL COLUMNS; Customers_Policies: ALL COLUMNS; First_Notification_of_Loss: FNOL_ID, Customer_ID, Policy_ID, Service_ID; Claims: Claim_ID, FNOL_ID, Effective_Date

Based on the above schema and your role's column-level access policy, generate a SQL query to answer the question. If your role does not have access to the required columns, respond with: "Sorry, I cannot answer."


Question: Which customer uses the most policies? Give me the customer name.
Answer: SELECT t1.customer_name FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id GROUP BY t1.customer_name ORDER BY count(*) DESC LIMIT 1
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT t1.customer_name FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id GROUP BY t1.customer_name ORDER BY count(*) DESC LIMIT 1
##Instruction:
Database: insurance_fnol
Total Tables: 7
Total Columns: 22

Table Schemas:

insurance_fnol contains tables such as Customers, Services, Available_Policies, Customers_Policies, First_Notification_of_Loss, Claims, Settlements.
Table Customers has columns such as Customer_ID, Customer_name.
Customer_ID is the primary key.
Table Services has columns such as Service_ID, Service_name.
Service_ID is the primary key.
Table Available_Policies has columns such as Policy_ID, policy_type_code, Customer_Phone.
Policy_ID is the primary key.
Table Customers_Policies has columns such as Customer_ID, Policy_ID, Date_Opened, Date_Closed.
Customer_ID is the primary key.
Table First_Notification_of_Loss has columns such as FNOL_ID, Customer_ID, Policy_ID, Service_ID.
FNOL_ID is the primary key.
Table Claims has columns such as Claim_ID, FNOL_ID, Effective_Date.
Claim_ID is the primary key.
Table Settlements has columns such as Settlement_ID, Claim_ID, Effective_Date, Settlement_Amount.
Settlement_ID is the primary key.
The Policy_ID of Customers_Policies is the foreign key of Policy_ID of Available_Policies.
The Customer_ID of Customers_Policies is the foreign key of Customer_ID of Customers.
The Customer_ID of First_Notification_of_Loss is the foreign key of Customer_ID of Customers_Policies.
The Policy_ID of First_Notification_of_Loss is the foreign key of Policy_ID of Customers_Policies.
The Service_ID of First_Notification_of_Loss is the foreign key of Service_ID of Services.
The FNOL_ID of Claims is the foreign key of FNOL_ID of First_Notification_of_Loss.
The Claim_ID of Settlements is the foreign key of Claim_ID of Claims.

##Role Access Policy (Column-Level):
Role: UnderwritingAnalyst
Accessible Columns: Customers: Customer_ID, Customer_name; Available_Policies: ALL COLUMNS; Customers_Policies: ALL COLUMNS; First_Notification_of_Loss: FNOL_ID, Customer_ID, Policy_ID, Service_ID; Claims: Claim_ID, FNOL_ID, Effective_Date

Based on the above schema and your role's column-level access policy, generate a SQL query to answer the question. If your role does not have access to the required columns, respond with: "Sorry, I cannot answer."


Question: What are all the policy types of the customer named "Dayana Robel"?
Answer: SELECT DISTINCT t3.policy_type_code FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id JOIN available_policies AS t3 ON t2.policy_id  =  t3.policy_id WHERE t1.customer_name  =  "Dayana Robel"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT DISTINCT t3.policy_type_code FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id JOIN available_policies AS t3 ON t2.policy_id  =  t3.policy_id WHERE t1.customer_name  =  "Dayana Robel"
##Instruction:
Database: insurance_fnol
Total Tables: 7
Total Columns: 22

Table Schemas:

insurance_fnol contains tables such as Customers, Services, Available_Policies, Customers_Policies, First_Notification_of_Loss, Claims, Settlements.
Table Customers has columns such as Customer_ID, Customer_name.
Customer_ID is the primary key.
Table Services has columns such as Service_ID, Service_name.
Service_ID is the primary key.
Table Available_Policies has columns such as Policy_ID, policy_type_code, Customer_Phone.
Policy_ID is the primary key.
Table Customers_Policies has columns such as Customer_ID, Policy_ID, Date_Opened, Date_Closed.
Customer_ID is the primary key.
Table First_Notification_of_Loss has columns such as FNOL_ID, Customer_ID, Policy_ID, Service_ID.
FNOL_ID is the primary key.
Table Claims has columns such as Claim_ID, FNOL_ID, Effective_Date.
Claim_ID is the primary key.
Table Settlements has columns such as Settlement_ID, Claim_ID, Effective_Date, Settlement_Amount.
Settlement_ID is the primary key.
The Policy_ID of Customers_Policies is the foreign key of Policy_ID of Available_Policies.
The Customer_ID of Customers_Policies is the foreign key of Customer_ID of Customers.
The Customer_ID of First_Notification_of_Loss is the foreign key of Customer_ID of Customers_Policies.
The Policy_ID of First_Notification_of_Loss is the foreign key of Policy_ID of Customers_Policies.
The Service_ID of First_Notification_of_Loss is the foreign key of Service_ID of Services.
The FNOL_ID of Claims is the foreign key of FNOL_ID of First_Notification_of_Loss.
The Claim_ID of Settlements is the foreign key of Claim_ID of Claims.

##Role Access Policy (Column-Level):
Role: UnderwritingAnalyst
Accessible Columns: Customers: Customer_ID, Customer_name; Available_Policies: ALL COLUMNS; Customers_Policies: ALL COLUMNS; First_Notification_of_Loss: FNOL_ID, Customer_ID, Policy_ID, Service_ID; Claims: Claim_ID, FNOL_ID, Effective_Date

Based on the above schema and your role's column-level access policy, generate a SQL query to answer the question. If your role does not have access to the required columns, respond with: "Sorry, I cannot answer."


Question: Tell me the types of the policy used by the customer named "Dayana Robel".
Answer: SELECT DISTINCT t3.policy_type_code FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id JOIN available_policies AS t3 ON t2.policy_id  =  t3.policy_id WHERE t1.customer_name  =  "Dayana Robel"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT DISTINCT t3.policy_type_code FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id JOIN available_policies AS t3 ON t2.policy_id  =  t3.policy_id WHERE t1.customer_name  =  "Dayana Robel"
##Instruction:
Database: insurance_fnol
Total Tables: 7
Total Columns: 22

Table Schemas:

insurance_fnol contains tables such as Customers, Services, Available_Policies, Customers_Policies, First_Notification_of_Loss, Claims, Settlements.
Table Customers has columns such as Customer_ID, Customer_name.
Customer_ID is the primary key.
Table Services has columns such as Service_ID, Service_name.
Service_ID is the primary key.
Table Available_Policies has columns such as Policy_ID, policy_type_code, Customer_Phone.
Policy_ID is the primary key.
Table Customers_Policies has columns such as Customer_ID, Policy_ID, Date_Opened, Date_Closed.
Customer_ID is the primary key.
Table First_Notification_of_Loss has columns such as FNOL_ID, Customer_ID, Policy_ID, Service_ID.
FNOL_ID is the primary key.
Table Claims has columns such as Claim_ID, FNOL_ID, Effective_Date.
Claim_ID is the primary key.
Table Settlements has columns such as Settlement_ID, Claim_ID, Effective_Date, Settlement_Amount.
Settlement_ID is the primary key.
The Policy_ID of Customers_Policies is the foreign key of Policy_ID of Available_Policies.
The Customer_ID of Customers_Policies is the foreign key of Customer_ID of Customers.
The Customer_ID of First_Notification_of_Loss is the foreign key of Customer_ID of Customers_Policies.
The Policy_ID of First_Notification_of_Loss is the foreign key of Policy_ID of Customers_Policies.
The Service_ID of First_Notification_of_Loss is the foreign key of Service_ID of Services.
The FNOL_ID of Claims is the foreign key of FNOL_ID of First_Notification_of_Loss.
The Claim_ID of Settlements is the foreign key of Claim_ID of Claims.

##Role Access Policy (Column-Level):
Role: UnderwritingAnalyst
Accessible Columns: Customers: Customer_ID, Customer_name; Available_Policies: ALL COLUMNS; Customers_Policies: ALL COLUMNS; First_Notification_of_Loss: FNOL_ID, Customer_ID, Policy_ID, Service_ID; Claims: Claim_ID, FNOL_ID, Effective_Date

Based on the above schema and your role's column-level access policy, generate a SQL query to answer the question. If your role does not have access to the required columns, respond with: "Sorry, I cannot answer."


Question: What are all the policy types of the customer that has the most policies listed?
Answer: SELECT DISTINCT t3.policy_type_code FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id JOIN available_policies AS t3 ON t2.policy_id  =  t3.policy_id WHERE t1.customer_name  =  (SELECT t1.customer_name FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id GROUP BY t1.customer_name ORDER BY count(*) DESC LIMIT 1)
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT DISTINCT t3.policy_type_code FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id JOIN available_policies AS t3 ON t2.policy_id  =  t3.policy_id WHERE t1.customer_name  =  (SELECT t1.customer_name FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id GROUP BY t1.customer_name ORDER BY count(*) DESC LIMIT 1)
##Instruction:
Database: insurance_fnol
Total Tables: 7
Total Columns: 22

Table Schemas:

insurance_fnol contains tables such as Customers, Services, Available_Policies, Customers_Policies, First_Notification_of_Loss, Claims, Settlements.
Table Customers has columns such as Customer_ID, Customer_name.
Customer_ID is the primary key.
Table Services has columns such as Service_ID, Service_name.
Service_ID is the primary key.
Table Available_Policies has columns such as Policy_ID, policy_type_code, Customer_Phone.
Policy_ID is the primary key.
Table Customers_Policies has columns such as Customer_ID, Policy_ID, Date_Opened, Date_Closed.
Customer_ID is the primary key.
Table First_Notification_of_Loss has columns such as FNOL_ID, Customer_ID, Policy_ID, Service_ID.
FNOL_ID is the primary key.
Table Claims has columns such as Claim_ID, FNOL_ID, Effective_Date.
Claim_ID is the primary key.
Table Settlements has columns such as Settlement_ID, Claim_ID, Effective_Date, Settlement_Amount.
Settlement_ID is the primary key.
The Policy_ID of Customers_Policies is the foreign key of Policy_ID of Available_Policies.
The Customer_ID of Customers_Policies is the foreign key of Customer_ID of Customers.
The Customer_ID of First_Notification_of_Loss is the foreign key of Customer_ID of Customers_Policies.
The Policy_ID of First_Notification_of_Loss is the foreign key of Policy_ID of Customers_Policies.
The Service_ID of First_Notification_of_Loss is the foreign key of Service_ID of Services.
The FNOL_ID of Claims is the foreign key of FNOL_ID of First_Notification_of_Loss.
The Claim_ID of Settlements is the foreign key of Claim_ID of Claims.

##Role Access Policy (Column-Level):
Role: UnderwritingAnalyst
Accessible Columns: Customers: Customer_ID, Customer_name; Available_Policies: ALL COLUMNS; Customers_Policies: ALL COLUMNS; First_Notification_of_Loss: FNOL_ID, Customer_ID, Policy_ID, Service_ID; Claims: Claim_ID, FNOL_ID, Effective_Date

Based on the above schema and your role's column-level access policy, generate a SQL query to answer the question. If your role does not have access to the required columns, respond with: "Sorry, I cannot answer."


Question: List all the policy types used by the customer enrolled in the most policies.
Answer: SELECT DISTINCT t3.policy_type_code FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id JOIN available_policies AS t3 ON t2.policy_id  =  t3.policy_id WHERE t1.customer_name  =  (SELECT t1.customer_name FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id GROUP BY t1.customer_name ORDER BY count(*) DESC LIMIT 1)
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT DISTINCT t3.policy_type_code FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id JOIN available_policies AS t3 ON t2.policy_id  =  t3.policy_id WHERE t1.customer_name  =  (SELECT t1.customer_name FROM customers AS t1 JOIN customers_policies AS t2 ON t1.customer_id  =  t2.customer_id GROUP BY t1.customer_name ORDER BY count(*) DESC LIMIT 1)
##Instruction:
Database: insurance_fnol
Total Tables: 7
Total Columns: 22

Table Schemas:

insurance_fnol contains tables such as Customers, Services, Available_Policies, Customers_Policies, First_Notification_of_Loss, Claims, Settlements.
Table Customers has columns such as Customer_ID, Customer_name.
Customer_ID is the primary key.
Table Services has columns such as Service_ID, Service_name.
Service_ID is the primary key.
Table Available_Policies has columns such as Policy_ID, policy_type_code, Customer_Phone.
Policy_ID is the primary key.
Table Customers_Policies has columns such as Customer_ID, Policy_ID, Date_Opened, Date_Closed.
Customer_ID is the primary key.
Table First_Notification_of_Loss has columns such as FNOL_ID, Customer_ID, Policy_ID, Service_ID.
FNOL_ID is the primary key.
Table Claims has columns such as Claim_ID, FNOL_ID, Effective_Date.
Claim_ID is the primary key.
Table Settlements has columns such as Settlement_ID, Claim_ID, Effective_Date, Settlement_Amount.
Settlement_ID is the primary key.
The Policy_ID of Customers_Policies is the foreign key of Policy_ID of Available_Policies.
The Customer_ID of Customers_Policies is the foreign key of Customer_ID of Customers.
The Customer_ID of First_Notification_of_Loss is the foreign key of Customer_ID of Customers_Policies.
The Policy_ID of First_Notification_of_Loss is the foreign key of Policy_ID of Customers_Policies.
The Service_ID of First_Notification_of_Loss is the foreign key of Service_ID of Services.
The FNOL_ID of Claims is the foreign key of FNOL_ID of First_Notification_of_Loss.
The Claim_ID of Settlements is the foreign key of Claim_ID of Claims.

##Role Access Policy (Column-Level):
Role: UnderwritingAnalyst
Accessible Columns: Customers: Customer_ID, Customer_name; Available_Policies: ALL COLUMNS; Customers_Policies: ALL COLUMNS; First_Notification_of_Loss: FNOL_ID, Customer_ID, Policy_ID, Service_ID; Claims: Claim_ID, FNOL_ID, Effective_Date

Based on the above schema and your role's column-level access policy, generate a SQL query to answer the question. If your role does not have access to the required columns, respond with: "Sorry, I cannot answer."


Question: List all the services in the alphabetical order.
Answer: Sorry, I cannot answer.
Permission: denied (Missing column permissions: services: Service_name)
Gold SQL: SELECT service_name FROM services ORDER BY service_name