### Database Schema:
CREATE TABLE city (
	city_id	INTEGER	NULL	PRIMARY KEY,
	city	TEXT	NOT NULL,
	country_id	INTEGER	NOT NULL,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP,
	foreign key (country_id) references country (country_id)
);

CREATE TABLE payment (
	payment_id	INTEGER	NULL	PRIMARY KEY,
	customer_id	INTEGER	NOT NULL,
	staff_id	INTEGER	NOT NULL,
	rental_id	INTEGER	NULL,
	amount	REAL	NOT NULL,
	payment_date	DATETIME	NOT NULL,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP,
	foreign key (staff_id) references staff (staff_id),
	foreign key (rental_id) references rental (rental_id),
	foreign key (customer_id) references customer (customer_id)
);

CREATE TABLE actor (
	actor_id	INTEGER	NULL	PRIMARY KEY,
	first_name	TEXT	NOT NULL,
	last_name	TEXT	NOT NULL,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE category (
	category_id	INTEGER	NULL	PRIMARY KEY,
	name	TEXT	NOT NULL,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE address (
	address_id	INTEGER	NULL	PRIMARY KEY,
	address	TEXT	NOT NULL,
	address2	TEXT	NULL,
	district	TEXT	NOT NULL,
	city_id	INTEGER	NOT NULL,
	postal_code	TEXT	NULL,
	phone	TEXT	NOT NULL,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP,
	foreign key (city_id) references city (city_id)
);

CREATE TABLE inventory (
	inventory_id	INTEGER	NULL	PRIMARY KEY,
	film_id	INTEGER	NOT NULL,
	store_id	INTEGER	NOT NULL,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP,
	foreign key (film_id) references film (film_id),
	foreign key (store_id) references store (store_id)
);

CREATE TABLE film_category (
	film_id	INTEGER	NOT NULL	PRIMARY KEY,
	category_id	INTEGER	NOT NULL	PRIMARY KEY,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP,
	foreign key (category_id) references category (category_id),
	foreign key (film_id) references film (film_id)
);

CREATE TABLE film (
	film_id	INTEGER	NULL	PRIMARY KEY,
	title	TEXT	NOT NULL,
	description	TEXT	NULL,
	release_year	TEXT	NULL,
	language_id	INTEGER	NOT NULL,
	original_language_id	INTEGER	NULL,
	rental_duration	INTEGER	NOT NULL	DEFAULT 3,
	rental_rate	REAL	NOT NULL	DEFAULT 4.99,
	length	INTEGER	NULL,
	replacement_cost	REAL	NOT NULL	DEFAULT 19.99,
	rating	TEXT	NULL	DEFAULT 'G',
	special_features	TEXT	NULL,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP,
	foreign key (original_language_id) references language (language_id),
	foreign key (language_id) references language (language_id)
);

CREATE TABLE staff (
	staff_id	INTEGER	NULL	PRIMARY KEY,
	first_name	TEXT	NOT NULL,
	last_name	TEXT	NOT NULL,
	address_id	INTEGER	NOT NULL,
	picture	BLOB	NULL,
	email	TEXT	NULL,
	store_id	INTEGER	NOT NULL,
	active	INTEGER	NOT NULL	DEFAULT 1,
	username	TEXT	NOT NULL,
	password	TEXT	NULL,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP,
	foreign key (store_id) references store (store_id),
	foreign key (address_id) references address (address_id)
);

CREATE TABLE country (
	country_id	INTEGER	NULL	PRIMARY KEY,
	country	TEXT	NOT NULL,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE store (
	store_id	INTEGER	NULL	PRIMARY KEY,
	manager_staff_id	INTEGER	NOT NULL,
	address_id	INTEGER	NOT NULL,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP,
	foreign key (manager_staff_id) references staff (staff_id),
	foreign key (address_id) references address (address_id)
);

CREATE TABLE rental (
	rental_id	INTEGER	NULL	PRIMARY KEY,
	rental_date	DATETIME	NOT NULL,
	inventory_id	INTEGER	NOT NULL,
	customer_id	INTEGER	NOT NULL,
	return_date	DATETIME	NULL,
	staff_id	INTEGER	NOT NULL,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP,
	foreign key (staff_id) references staff (staff_id),
	foreign key (customer_id) references customer (customer_id),
	foreign key (inventory_id) references inventory (inventory_id)
);

CREATE TABLE language (
	language_id	INTEGER	NULL	PRIMARY KEY,
	name	TEXT	NOT NULL,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE film_text (
	film_id	INTEGER	NOT NULL	PRIMARY KEY,
	title	TEXT	NOT NULL,
	description	TEXT	NULL
);

CREATE TABLE film_actor (
	actor_id	INTEGER	NOT NULL	PRIMARY KEY,
	film_id	INTEGER	NOT NULL	PRIMARY KEY,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP,
	foreign key (film_id) references film (film_id),
	foreign key (actor_id) references actor (actor_id)
);

CREATE TABLE customer (
	customer_id	INTEGER	NULL	PRIMARY KEY,
	store_id	INTEGER	NOT NULL,
	first_name	TEXT	NOT NULL,
	last_name	TEXT	NOT NULL,
	email	TEXT	NULL,
	address_id	INTEGER	NOT NULL,
	active	INTEGER	NOT NULL	DEFAULT 1,
	create_date	DATETIME	NOT NULL,
	last_update	DATETIME	NOT NULL	DEFAULT CURRENT_TIMESTAMP,
	foreign key (store_id) references store (store_id),
	foreign key (address_id) references address (address_id)
);

### User's Query:
How many movies have a length longer than 100?

### Extra Knowledge:
length longer than 100 refers to length > 100
SELECT COUNT(film_id) FROM film WHERE length > 100