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

Table Schemas:

customers_and_addresses contains tables such as Addresses, Products, Customers, Customer_Addresses, Customer_Contact_Channels, Customer_Orders, Order_Items.
Table Addresses has columns such as address_id, address_content, city, zip_postcode, state_province_county, country, other_address_details.
address_id is the primary key.
Table Products has columns such as product_id, product_details.
product_id is the primary key.
Table Customers has columns such as customer_id, payment_method, customer_name, date_became_customer, other_customer_details.
customer_id is the primary key.
Table Customer_Addresses has columns such as customer_id, address_id, date_address_from, address_type, date_address_to.
Table Customer_Contact_Channels has columns such as customer_id, channel_code, active_from_date, active_to_date, contact_number.
Table Customer_Orders has columns such as order_id, customer_id, order_status, order_date, order_details.
order_id is the primary key.
Table Order_Items has columns such as order_id, product_id, order_quantity.
The customer_id of Customer_Addresses is the foreign key of customer_id of Customers.
The address_id of Customer_Addresses is the foreign key of address_id of Addresses.
The customer_id of Customer_Contact_Channels is the foreign key of customer_id of Customers.
The customer_id of Customer_Orders is the foreign key of customer_id of Customers.
The order_id of Order_Items is the foreign key of order_id of Customer_Orders.
The product_id of Order_Items is the foreign key of product_id of Products.

##Role Access Policy (Column-Level):
Role: DataAnalyst
Accessible Columns: Customers: customer_id, customer_name, date_became_customer; Customer_Addresses: customer_id, address_id, date_address_from, address_type, date_address_to; Customer_Orders: order_id, customer_id, order_status, order_date; Order_Items: order_id, product_id, order_quantity; Addresses: city, zip_postcode, state_province_county, country; Products: product_id, product_details

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 customers have at least one order with status "Cancelled"?
Answer: SELECT count(DISTINCT customer_id) FROM customer_orders WHERE order_status  =  "Cancelled"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT count(DISTINCT customer_id) FROM customer_orders WHERE order_status  =  "Cancelled"
##Instruction:
Database: customers_and_addresses
Total Tables: 7
Total Columns: 32

Table Schemas:

customers_and_addresses contains tables such as Addresses, Products, Customers, Customer_Addresses, Customer_Contact_Channels, Customer_Orders, Order_Items.
Table Addresses has columns such as address_id, address_content, city, zip_postcode, state_province_county, country, other_address_details.
address_id is the primary key.
Table Products has columns such as product_id, product_details.
product_id is the primary key.
Table Customers has columns such as customer_id, payment_method, customer_name, date_became_customer, other_customer_details.
customer_id is the primary key.
Table Customer_Addresses has columns such as customer_id, address_id, date_address_from, address_type, date_address_to.
Table Customer_Contact_Channels has columns such as customer_id, channel_code, active_from_date, active_to_date, contact_number.
Table Customer_Orders has columns such as order_id, customer_id, order_status, order_date, order_details.
order_id is the primary key.
Table Order_Items has columns such as order_id, product_id, order_quantity.
The customer_id of Customer_Addresses is the foreign key of customer_id of Customers.
The address_id of Customer_Addresses is the foreign key of address_id of Addresses.
The customer_id of Customer_Contact_Channels is the foreign key of customer_id of Customers.
The customer_id of Customer_Orders is the foreign key of customer_id of Customers.
The order_id of Order_Items is the foreign key of order_id of Customer_Orders.
The product_id of Order_Items is the foreign key of product_id of Products.

##Role Access Policy (Column-Level):
Role: DataAnalyst
Accessible Columns: Customers: customer_id, customer_name, date_became_customer; Customer_Addresses: customer_id, address_id, date_address_from, address_type, date_address_to; Customer_Orders: order_id, customer_id, order_status, order_date; Order_Items: order_id, product_id, order_quantity; Addresses: city, zip_postcode, state_province_county, country; Products: product_id, product_details

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: Return the number of customers who have at least one order with "Cancelled" status.
Answer: SELECT count(DISTINCT customer_id) FROM customer_orders WHERE order_status  =  "Cancelled"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT count(DISTINCT customer_id) FROM customer_orders WHERE order_status  =  "Cancelled"
##Instruction:
Database: customers_and_addresses
Total Tables: 7
Total Columns: 32

Table Schemas:

customers_and_addresses contains tables such as Addresses, Products, Customers, Customer_Addresses, Customer_Contact_Channels, Customer_Orders, Order_Items.
Table Addresses has columns such as address_id, address_content, city, zip_postcode, state_province_county, country, other_address_details.
address_id is the primary key.
Table Products has columns such as product_id, product_details.
product_id is the primary key.
Table Customers has columns such as customer_id, payment_method, customer_name, date_became_customer, other_customer_details.
customer_id is the primary key.
Table Customer_Addresses has columns such as customer_id, address_id, date_address_from, address_type, date_address_to.
Table Customer_Contact_Channels has columns such as customer_id, channel_code, active_from_date, active_to_date, contact_number.
Table Customer_Orders has columns such as order_id, customer_id, order_status, order_date, order_details.
order_id is the primary key.
Table Order_Items has columns such as order_id, product_id, order_quantity.
The customer_id of Customer_Addresses is the foreign key of customer_id of Customers.
The address_id of Customer_Addresses is the foreign key of address_id of Addresses.
The customer_id of Customer_Contact_Channels is the foreign key of customer_id of Customers.
The customer_id of Customer_Orders is the foreign key of customer_id of Customers.
The order_id of Order_Items is the foreign key of order_id of Customer_Orders.
The product_id of Order_Items is the foreign key of product_id of Products.

##Role Access Policy (Column-Level):
Role: DataAnalyst
Accessible Columns: Customers: customer_id, customer_name, date_became_customer; Customer_Addresses: customer_id, address_id, date_address_from, address_type, date_address_to; Customer_Orders: order_id, customer_id, order_status, order_date; Order_Items: order_id, product_id, order_quantity; Addresses: city, zip_postcode, state_province_county, country; Products: product_id, product_details

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 orders have detail "Second time"?
Answer: Sorry, I cannot answer.
Permission: denied (Missing column permissions: customer_orders: order_details)
Gold SQL: SELECT count(*) FROM customer_orders WHERE order_details  =  "Second time"
##Instruction:
Database: customers_and_addresses
Total Tables: 7
Total Columns: 32

Table Schemas:

customers_and_addresses contains tables such as Addresses, Products, Customers, Customer_Addresses, Customer_Contact_Channels, Customer_Orders, Order_Items.
Table Addresses has columns such as address_id, address_content, city, zip_postcode, state_province_county, country, other_address_details.
address_id is the primary key.
Table Products has columns such as product_id, product_details.
product_id is the primary key.
Table Customers has columns such as customer_id, payment_method, customer_name, date_became_customer, other_customer_details.
customer_id is the primary key.
Table Customer_Addresses has columns such as customer_id, address_id, date_address_from, address_type, date_address_to.
Table Customer_Contact_Channels has columns such as customer_id, channel_code, active_from_date, active_to_date, contact_number.
Table Customer_Orders has columns such as order_id, customer_id, order_status, order_date, order_details.
order_id is the primary key.
Table Order_Items has columns such as order_id, product_id, order_quantity.
The customer_id of Customer_Addresses is the foreign key of customer_id of Customers.
The address_id of Customer_Addresses is the foreign key of address_id of Addresses.
The customer_id of Customer_Contact_Channels is the foreign key of customer_id of Customers.
The customer_id of Customer_Orders is the foreign key of customer_id of Customers.
The order_id of Order_Items is the foreign key of order_id of Customer_Orders.
The product_id of Order_Items is the foreign key of product_id of Products.

##Role Access Policy (Column-Level):
Role: DataAnalyst
Accessible Columns: Customers: customer_id, customer_name, date_became_customer; Customer_Addresses: customer_id, address_id, date_address_from, address_type, date_address_to; Customer_Orders: order_id, customer_id, order_status, order_date; Order_Items: order_id, product_id, order_quantity; Addresses: city, zip_postcode, state_province_county, country; Products: product_id, product_details

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 number of orders with "Second time" as order detail.
Answer: Sorry, I cannot answer.
Permission: denied (Missing column permissions: customer_orders: order_details)
Gold SQL: SELECT count(*) FROM customer_orders WHERE order_details  =  "Second time"
##Instruction:
Database: customers_and_addresses
Total Tables: 7
Total Columns: 32

Table Schemas:

customers_and_addresses contains tables such as Addresses, Products, Customers, Customer_Addresses, Customer_Contact_Channels, Customer_Orders, Order_Items.
Table Addresses has columns such as address_id, address_content, city, zip_postcode, state_province_county, country, other_address_details.
address_id is the primary key.
Table Products has columns such as product_id, product_details.
product_id is the primary key.
Table Customers has columns such as customer_id, payment_method, customer_name, date_became_customer, other_customer_details.
customer_id is the primary key.
Table Customer_Addresses has columns such as customer_id, address_id, date_address_from, address_type, date_address_to.
Table Customer_Contact_Channels has columns such as customer_id, channel_code, active_from_date, active_to_date, contact_number.
Table Customer_Orders has columns such as order_id, customer_id, order_status, order_date, order_details.
order_id is the primary key.
Table Order_Items has columns such as order_id, product_id, order_quantity.
The customer_id of Customer_Addresses is the foreign key of customer_id of Customers.
The address_id of Customer_Addresses is the foreign key of address_id of Addresses.
The customer_id of Customer_Contact_Channels is the foreign key of customer_id of Customers.
The customer_id of Customer_Orders is the foreign key of customer_id of Customers.
The order_id of Order_Items is the foreign key of order_id of Customer_Orders.
The product_id of Order_Items is the foreign key of product_id of Products.

##Role Access Policy (Column-Level):
Role: DataAnalyst
Accessible Columns: Customers: customer_id, customer_name, date_became_customer; Customer_Addresses: customer_id, address_id, date_address_from, address_type, date_address_to; Customer_Orders: order_id, customer_id, order_status, order_date; Order_Items: order_id, product_id, order_quantity; Addresses: city, zip_postcode, state_province_county, country; Products: product_id, product_details

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 customer name and date of the orders that have the status "Delivered".
Answer: SELECT t1.customer_name ,  t2.order_date FROM customers AS t1 JOIN customer_orders AS t2 ON t1.customer_id  =  t2.customer_id WHERE order_status  =  "Delivered"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT t1.customer_name ,  t2.order_date FROM customers AS t1 JOIN customer_orders AS t2 ON t1.customer_id  =  t2.customer_id WHERE order_status  =  "Delivered"
##Instruction:
Database: customers_and_addresses
Total Tables: 7
Total Columns: 32

Table Schemas:

customers_and_addresses contains tables such as Addresses, Products, Customers, Customer_Addresses, Customer_Contact_Channels, Customer_Orders, Order_Items.
Table Addresses has columns such as address_id, address_content, city, zip_postcode, state_province_county, country, other_address_details.
address_id is the primary key.
Table Products has columns such as product_id, product_details.
product_id is the primary key.
Table Customers has columns such as customer_id, payment_method, customer_name, date_became_customer, other_customer_details.
customer_id is the primary key.
Table Customer_Addresses has columns such as customer_id, address_id, date_address_from, address_type, date_address_to.
Table Customer_Contact_Channels has columns such as customer_id, channel_code, active_from_date, active_to_date, contact_number.
Table Customer_Orders has columns such as order_id, customer_id, order_status, order_date, order_details.
order_id is the primary key.
Table Order_Items has columns such as order_id, product_id, order_quantity.
The customer_id of Customer_Addresses is the foreign key of customer_id of Customers.
The address_id of Customer_Addresses is the foreign key of address_id of Addresses.
The customer_id of Customer_Contact_Channels is the foreign key of customer_id of Customers.
The customer_id of Customer_Orders is the foreign key of customer_id of Customers.
The order_id of Order_Items is the foreign key of order_id of Customer_Orders.
The product_id of Order_Items is the foreign key of product_id of Products.

##Role Access Policy (Column-Level):
Role: DataAnalyst
Accessible Columns: Customers: customer_id, customer_name, date_became_customer; Customer_Addresses: customer_id, address_id, date_address_from, address_type, date_address_to; Customer_Orders: order_id, customer_id, order_status, order_date; Order_Items: order_id, product_id, order_quantity; Addresses: city, zip_postcode, state_province_county, country; Products: product_id, product_details

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 customer name and date of the orders whose status is "Delivered".
Answer: SELECT t1.customer_name ,  t2.order_date FROM customers AS t1 JOIN customer_orders AS t2 ON t1.customer_id  =  t2.customer_id WHERE order_status  =  "Delivered"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT t1.customer_name ,  t2.order_date FROM customers AS t1 JOIN customer_orders AS t2 ON t1.customer_id  =  t2.customer_id WHERE order_status  =  "Delivered"
##Instruction:
Database: customers_and_addresses
Total Tables: 7
Total Columns: 32

Table Schemas:

customers_and_addresses contains tables such as Addresses, Products, Customers, Customer_Addresses, Customer_Contact_Channels, Customer_Orders, Order_Items.
Table Addresses has columns such as address_id, address_content, city, zip_postcode, state_province_county, country, other_address_details.
address_id is the primary key.
Table Products has columns such as product_id, product_details.
product_id is the primary key.
Table Customers has columns such as customer_id, payment_method, customer_name, date_became_customer, other_customer_details.
customer_id is the primary key.
Table Customer_Addresses has columns such as customer_id, address_id, date_address_from, address_type, date_address_to.
Table Customer_Contact_Channels has columns such as customer_id, channel_code, active_from_date, active_to_date, contact_number.
Table Customer_Orders has columns such as order_id, customer_id, order_status, order_date, order_details.
order_id is the primary key.
Table Order_Items has columns such as order_id, product_id, order_quantity.
The customer_id of Customer_Addresses is the foreign key of customer_id of Customers.
The address_id of Customer_Addresses is the foreign key of address_id of Addresses.
The customer_id of Customer_Contact_Channels is the foreign key of customer_id of Customers.
The customer_id of Customer_Orders is the foreign key of customer_id of Customers.
The order_id of Order_Items is the foreign key of order_id of Customer_Orders.
The product_id of Order_Items is the foreign key of product_id of Products.

##Role Access Policy (Column-Level):
Role: DataAnalyst
Accessible Columns: Customers: customer_id, customer_name, date_became_customer; Customer_Addresses: customer_id, address_id, date_address_from, address_type, date_address_to; Customer_Orders: order_id, customer_id, order_status, order_date; Order_Items: order_id, product_id, order_quantity; Addresses: city, zip_postcode, state_province_county, country; Products: product_id, product_details

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 total number of products that are in orders with status "Cancelled"?
Answer: SELECT sum(t2.order_quantity) FROM customer_orders AS t1 JOIN order_items AS t2 ON t1.order_id  =  t2.order_id WHERE t1.order_status  =  "Cancelled"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT sum(t2.order_quantity) FROM customer_orders AS t1 JOIN order_items AS t2 ON t1.order_id  =  t2.order_id WHERE t1.order_status  =  "Cancelled"
##Instruction:
Database: customers_and_addresses
Total Tables: 7
Total Columns: 32

Table Schemas:

customers_and_addresses contains tables such as Addresses, Products, Customers, Customer_Addresses, Customer_Contact_Channels, Customer_Orders, Order_Items.
Table Addresses has columns such as address_id, address_content, city, zip_postcode, state_province_county, country, other_address_details.
address_id is the primary key.
Table Products has columns such as product_id, product_details.
product_id is the primary key.
Table Customers has columns such as customer_id, payment_method, customer_name, date_became_customer, other_customer_details.
customer_id is the primary key.
Table Customer_Addresses has columns such as customer_id, address_id, date_address_from, address_type, date_address_to.
Table Customer_Contact_Channels has columns such as customer_id, channel_code, active_from_date, active_to_date, contact_number.
Table Customer_Orders has columns such as order_id, customer_id, order_status, order_date, order_details.
order_id is the primary key.
Table Order_Items has columns such as order_id, product_id, order_quantity.
The customer_id of Customer_Addresses is the foreign key of customer_id of Customers.
The address_id of Customer_Addresses is the foreign key of address_id of Addresses.
The customer_id of Customer_Contact_Channels is the foreign key of customer_id of Customers.
The customer_id of Customer_Orders is the foreign key of customer_id of Customers.
The order_id of Order_Items is the foreign key of order_id of Customer_Orders.
The product_id of Order_Items is the foreign key of product_id of Products.

##Role Access Policy (Column-Level):
Role: DataAnalyst
Accessible Columns: Customers: customer_id, customer_name, date_became_customer; Customer_Addresses: customer_id, address_id, date_address_from, address_type, date_address_to; Customer_Orders: order_id, customer_id, order_status, order_date; Order_Items: order_id, product_id, order_quantity; Addresses: city, zip_postcode, state_province_county, country; Products: product_id, product_details

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 total quantity of products associated with the orders in the "Cancelled" status.
Answer: SELECT sum(t2.order_quantity) FROM customer_orders AS t1 JOIN order_items AS t2 ON t1.order_id  =  t2.order_id WHERE t1.order_status  =  "Cancelled"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT sum(t2.order_quantity) FROM customer_orders AS t1 JOIN order_items AS t2 ON t1.order_id  =  t2.order_id WHERE t1.order_status  =  "Cancelled"
##Instruction:
Database: customers_and_addresses
Total Tables: 7
Total Columns: 32

Table Schemas:

customers_and_addresses contains tables such as Addresses, Products, Customers, Customer_Addresses, Customer_Contact_Channels, Customer_Orders, Order_Items.
Table Addresses has columns such as address_id, address_content, city, zip_postcode, state_province_county, country, other_address_details.
address_id is the primary key.
Table Products has columns such as product_id, product_details.
product_id is the primary key.
Table Customers has columns such as customer_id, payment_method, customer_name, date_became_customer, other_customer_details.
customer_id is the primary key.
Table Customer_Addresses has columns such as customer_id, address_id, date_address_from, address_type, date_address_to.
Table Customer_Contact_Channels has columns such as customer_id, channel_code, active_from_date, active_to_date, contact_number.
Table Customer_Orders has columns such as order_id, customer_id, order_status, order_date, order_details.
order_id is the primary key.
Table Order_Items has columns such as order_id, product_id, order_quantity.
The customer_id of Customer_Addresses is the foreign key of customer_id of Customers.
The address_id of Customer_Addresses is the foreign key of address_id of Addresses.
The customer_id of Customer_Contact_Channels is the foreign key of customer_id of Customers.
The customer_id of Customer_Orders is the foreign key of customer_id of Customers.
The order_id of Order_Items is the foreign key of order_id of Customer_Orders.
The product_id of Order_Items is the foreign key of product_id of Products.

##Role Access Policy (Column-Level):
Role: DataAnalyst
Accessible Columns: Customers: customer_id, customer_name, date_became_customer; Customer_Addresses: customer_id, address_id, date_address_from, address_type, date_address_to; Customer_Orders: order_id, customer_id, order_status, order_date; Order_Items: order_id, product_id, order_quantity; Addresses: city, zip_postcode, state_province_county, country; Products: product_id, product_details

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 total amount of products ordered before 2018-03-17 07:13:53.
Answer: SELECT sum(t2.order_quantity) FROM customer_orders AS t1 JOIN order_items AS t2 ON t1.order_id  =  t2.order_id WHERE t1.order_date  <  "2018-03-17 07:13:53"
Permission: allowed (All required columns are permitted)
Gold SQL: SELECT sum(t2.order_quantity) FROM customer_orders AS t1 JOIN order_items AS t2 ON t1.order_id  =  t2.order_id WHERE t1.order_date  <  "2018-03-17 07:13:53"