CREATE TABLE postings (
posting_id INT NOT NULL AUTO_INCREMENT,
for_sale LONGTEXT NULL,
for_sale_date DATETIME NULL,
for_sale_city_id INT NULL,
jobs LONGTEXT NULL,
jobs_date DATETIME NULL,
jobs_city_id INT NULL,
PRIMARY KEY(posting_id)
This isn't what you asked but seeing this structure tells me you need to create a related table (And a lookup table for the values to choose from) instead of doing things this way. If you are listing the same things repeatedly in a table, you need a related table. I would have postings and Posting_type (since you have more than one type you want listed per posting. Something more like this structure.
CREATE TABLE postings (
posting_id INT NOT NULL AUTO_INCREMENT,
posting_description LONGTEXT NULL,
Posting_date DATETIME NULL,
PRIMARY KEY(posting_id)
CREATE TABLE posting_categories (
posting_id INT NOT NULL,
Category_id int
Primary Key (posting_id, Category_id)
CREATE TABLE Categories (
category_id INT NOT NULL AUTO_INCREMENT,
category_description LONGTEXT NULL,
PRIMARY KEY(category_id)
This gives you the freedom to add as many categories as you like without changing the table structures.