首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL多表操作與批處理實戰(二):多表關聯查詢與結構修改

     編輯:MySQL 資料庫相關知識

多表關聯查詢核心:明確關聯條件

兩表mytable(姓名、性別、出生)與title(作者、文章標題、發表日期)通過name = writer關聯。若同名列(如兩表皆有name),必須用mytable.name/title.name消歧。

實例:查詢文章a2的作者詳情

SELECT title, writer, birthaddr, birth 
FROM mytable, title 
WHERE mytable.name = title.writer AND title = 'a2';

結果:a2 | abccs | china | 1977-07-07

結構修改操作

1. 增加欄位

ALTER TABLE mytable ADD COLUMN single CHAR(1);

2. 修改記錄

UPDATE mytable SET single='y' WHERE name='abccs';

驗證:SELECT * FROM mytable顯示abccs行single=y,其餘NULL。

關鍵提示

  • 多表查詢必須指定關聯條件,否則產生笛卡爾積
  • ALTER TABLE大表時會鎖表,生產環境建議pt-online-schema-change或低峰執行
  • UPDATE無WHERE將全表修改,永遠加WHERE
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved