已有員工基本信息表 mytable:
+----------+------+------------+-----------+ | name | sex | birth | birthaddr | +----------+------+------------+-----------+ | abccs | f | 1977-07-07 | china | | mary | f | 1978-12-12 | usa | | tom | m | 1970-09-02 | usa | +----------+------+------------+-----------+
titleCREATE TABLE title ( writer VARCHAR(20) NOT NULL, title VARCHAR(40) NOT NULL, senddate DATE );
插入樣本數據:
+--------+-------+------------+ | writer | title | senddate | +--------+-------+------------+ | abccs | a1 | 2000-01-23 | | mary | b1 | 1998-03-21 | | abccs | a2 | 2000-12-04 | | tom | c1 | 1992-05-16 | | tom | c2 | 1999-12-12 | +--------+-------+------------+
SELECT m.name, m.sex, t.title FROM mytable m, title t WHERE m.name = t.writer AND m.name = 'abccs';
結果:
+-------+------+-------+ | name | sex | title | +-------+------+-------+ | abccs | f | a1 | | abccs | f | a2 | +-------+------+-------+
SELECT t.title, t.writer, m.birthaddr, m.birth FROM mytable m, title t WHERE m.name = t.writer AND t.title = 'a2';
結果:
+-------+--------+-----------+------------+ | title | writer | birthaddr | birth | +-------+--------+-----------+------------+ | a2 | abccs | china | 1977-07-07 | +-------+--------+-----------+------------+
name vs writer),直接用表別名限定即可。name),必須寫成 mytable.name = title.name 避免歧義。INNER JOIN ... ON,建議新代碼使用显式 JOIN 語法。mysqldump -u root -p --databases db_name > backup.sql.frm/.MYD/.MYI 檔案。crontab 或 Windows 任務計劃,保留最近 N 份備份。