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: ClaimsAdjuster
Accessible Columns: Customers: Customer_ID, Customer_name; Services: Service_ID, Service_name; Available_Policies: Policy_ID, policy_type_code; Customers_Policies: Customer_ID, Policy_ID, Date_Opened, Date_Closed; First_Notification_of_Loss: ALL COLUMNS; Claims: ALL COLUMNS; Settlements: Settlement_ID, Claim_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: How many services are there?
Answer: SELECT count(*) FROM services
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT count(*) FROM services
##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: ClaimsAdjuster
Accessible Columns: Customers: Customer_ID, Customer_name; Services: Service_ID, Service_name; Available_Policies: Policy_ID, policy_type_code; Customers_Policies: Customer_ID, Policy_ID, Date_Opened, Date_Closed; First_Notification_of_Loss: ALL COLUMNS; Claims: ALL COLUMNS; Settlements: Settlement_ID, Claim_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 available services.
Answer: SELECT count(*) FROM services
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT count(*) FROM services
##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: ClaimsAdjuster
Accessible Columns: Customers: Customer_ID, Customer_name; Services: Service_ID, Service_name; Available_Policies: Policy_ID, policy_type_code; Customers_Policies: Customer_ID, Policy_ID, Date_Opened, Date_Closed; First_Notification_of_Loss: ALL COLUMNS; Claims: ALL COLUMNS; Settlements: Settlement_ID, Claim_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: Find the names of users who do not have a first notification of loss record.
Answer: SELECT customer_name FROM customers EXCEPT SELECT t1.customer_name FROM customers AS t1 JOIN first_notification_of_loss AS t2 ON t1.customer_id  =  t2.customer_id
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT customer_name FROM customers EXCEPT SELECT t1.customer_name FROM customers AS t1 JOIN first_notification_of_loss AS t2 ON t1.customer_id  =  t2.customer_id
##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: ClaimsAdjuster
Accessible Columns: Customers: Customer_ID, Customer_name; Services: Service_ID, Service_name; Available_Policies: Policy_ID, policy_type_code; Customers_Policies: Customer_ID, Policy_ID, Date_Opened, Date_Closed; First_Notification_of_Loss: ALL COLUMNS; Claims: ALL COLUMNS; Settlements: Settlement_ID, Claim_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 customers do not have a first notification of loss record? Give me the customer names.
Answer: SELECT customer_name FROM customers EXCEPT SELECT t1.customer_name FROM customers AS t1 JOIN first_notification_of_loss AS t2 ON t1.customer_id  =  t2.customer_id
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT customer_name FROM customers EXCEPT SELECT t1.customer_name FROM customers AS t1 JOIN first_notification_of_loss AS t2 ON t1.customer_id  =  t2.customer_id
##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: ClaimsAdjuster
Accessible Columns: Customers: Customer_ID, Customer_name; Services: Service_ID, Service_name; Available_Policies: Policy_ID, policy_type_code; Customers_Policies: Customer_ID, Policy_ID, Date_Opened, Date_Closed; First_Notification_of_Loss: ALL COLUMNS; Claims: ALL COLUMNS; Settlements: Settlement_ID, Claim_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: Find the names of customers who have used either the service "Close a policy" or the service "Upgrade a policy".
Answer: SELECT t1.customer_name FROM customers AS t1 JOIN first_notification_of_loss AS t2 ON t1.customer_id  =  t2.customer_id JOIN services AS t3 ON t2.service_id  =  t3.service_id WHERE t3.service_name  =  "Close a policy" OR t3.service_name  =  "Upgrade a policy"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT t1.customer_name FROM customers AS t1 JOIN first_notification_of_loss AS t2 ON t1.customer_id  =  t2.customer_id JOIN services AS t3 ON t2.service_id  =  t3.service_id WHERE t3.service_name  =  "Close a policy" OR t3.service_name  =  "Upgrade a policy"
##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: ClaimsAdjuster
Accessible Columns: Customers: Customer_ID, Customer_name; Services: Service_ID, Service_name; Available_Policies: Policy_ID, policy_type_code; Customers_Policies: Customer_ID, Policy_ID, Date_Opened, Date_Closed; First_Notification_of_Loss: ALL COLUMNS; Claims: ALL COLUMNS; Settlements: Settlement_ID, Claim_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 customers have used the service named "Close a policy" or "Upgrade a policy"? Give me the customer names.
Answer: SELECT t1.customer_name FROM customers AS t1 JOIN first_notification_of_loss AS t2 ON t1.customer_id  =  t2.customer_id JOIN services AS t3 ON t2.service_id  =  t3.service_id WHERE t3.service_name  =  "Close a policy" OR t3.service_name  =  "Upgrade a policy"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT t1.customer_name FROM customers AS t1 JOIN first_notification_of_loss AS t2 ON t1.customer_id  =  t2.customer_id JOIN services AS t3 ON t2.service_id  =  t3.service_id WHERE t3.service_name  =  "Close a policy" OR t3.service_name  =  "Upgrade a policy"
##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: ClaimsAdjuster
Accessible Columns: Customers: Customer_ID, Customer_name; Services: Service_ID, Service_name; Available_Policies: Policy_ID, policy_type_code; Customers_Policies: Customer_ID, Policy_ID, Date_Opened, Date_Closed; First_Notification_of_Loss: ALL COLUMNS; Claims: ALL COLUMNS; Settlements: Settlement_ID, Claim_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: Find the IDs of customers whose name contains "Diana".
Answer: SELECT customer_id FROM customers WHERE customer_name LIKE "%Diana%"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT customer_id FROM customers WHERE customer_name LIKE "%Diana%"
##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: ClaimsAdjuster
Accessible Columns: Customers: Customer_ID, Customer_name; Services: Service_ID, Service_name; Available_Policies: Policy_ID, policy_type_code; Customers_Policies: Customer_ID, Policy_ID, Date_Opened, Date_Closed; First_Notification_of_Loss: ALL COLUMNS; Claims: ALL COLUMNS; Settlements: Settlement_ID, Claim_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 the IDs of customers who have "Diana" in part of their names?
Answer: SELECT customer_id FROM customers WHERE customer_name LIKE "%Diana%"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT customer_id FROM customers WHERE customer_name LIKE "%Diana%"
##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: ClaimsAdjuster
Accessible Columns: Customers: Customer_ID, Customer_name; Services: Service_ID, Service_name; Available_Policies: Policy_ID, policy_type_code; Customers_Policies: Customer_ID, Policy_ID, Date_Opened, Date_Closed; First_Notification_of_Loss: ALL COLUMNS; Claims: ALL COLUMNS; Settlements: Settlement_ID, Claim_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 the maximum and minimum settlement amount on record?
Answer: Sorry, I cannot answer.
Permission: denied (Missing column permissions: settlements: Settlement_Amount)
Gold SQL: SELECT max(settlement_amount) ,  min(settlement_amount) FROM settlements