我有6個表,需要從這些表中一次檢索一些數據。任何機構可以告訴我,我可以從一個查詢中選擇我的值嗎?從多個表中選擇查詢
我需要這些值。
institute_id
institute_name
city_name
options (relate to institute_id)
mediums (relate to institute_Id)
這些是我的表
CREATE TABLE institutes (
institute_id INT(4) UNSIGNED NOT NULL AUTO_INCREMENT,
login_id INT(4) UNSIGNED NOT NULL,
address_id INT(4) NOT NULL,
contact_id INT(4) NOT NULL,
institute_code INT(4) NOT NULL,
institute_name VARCHAR(80) NOT NULL,
institute_details VARCHAR(80) NOT NULL,
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE address (
address_id INT(4) UNSIGNED NOT NULL AUTO_INCREMENT,
address_one VARCHAR(40) NOT NULL,
address_two VARCHAR(40) DEFAULT NULL,
city_id INT(4) UNSIGNED NOT NULL,
PRIMARY KEY (address_id),
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE city(
city_id INT(4) UNSIGNED NOT NULL AUTO_INCREMENT,
city_name VARCHAR(30) NOT NULL,
state_id INT(2) UNSIGNED NOT NULL,
PRIMARY KEY (city_id),
) ENGINE=MyISAM;
CREATE TABLE medium(
medium_id INT(2) UNSIGNED NOT NULL AUTO_INCREMENT,
medium_name VARCHAR(30) NOT NULL,
PRIMARY KEY (medium_id),
) ENGINE=MyISAM;
CREATE TABLE options(
option_id INT(2) UNSIGNED NOT NULL AUTO_INCREMENT,
option_name VARCHAR(60) NOT NULL,
PRIMARY KEY (option_id),
) ENGINE=MyISAM;
CREATE TABLE institute_medium(
im_id INT(4) UNSIGNED NOT NULL AUTO_INCREMENT,
medium_id INT(2) UNSIGNED NOT NULL,
institute_id INT(4) UNSIGNED NOT NULL,
PRIMARY KEY (im_id)
) ENGINE=MyISAM;
這些都是我的表
我想這樣的,但林混淆時,即時通訊試圖讓選項和媒介..總有一個以上選項和媒體instutite_medium一個機構...
$query = "SELECT
institute_id, institute_name, city_name,
DATE_FORMAT(registration_date, '%M %e, %Y') AS date
FROM
institutes
INNER JOIN
address ON institutes.address_id = address.address_id
INNER JOIN
city ON address.city_id = city.city_id
ORDER BY
registration_date DESC";
任何意見都是gr吃得津津樂道。
謝謝...
你需要匹配,例如某一特定的選項? –
您可以留下加入institution_medium左連接媒介,並且每個機構只能獲得一個Institution_medium記錄和只有一個媒體記錄。哪一個取決於你的SQL服務器。您可以指定on子句中的哪一個。 –