資料庫-隨記

史迪仔要秃头了發表於2024-04-03

1、利用檔案向資料庫插入:load data local infile '檔名' into table 表名 FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n' (BY ','之後可為列明); 其中BY ','中的,根據檔案中的分隔符確定

如果上述報錯,嘗試: show global variables like 'local_infile';
如果顯示OFF
那麼 set global local_infile=1;,
直到顯示ON

2、設定本地資料庫被其它使用者訪問
navicat點選使用者,編輯,將主機改為:"%" (代表所有ip都可以訪問)

3、navicat中 ‘工具’-‘歷史日誌’可以截獲執行的sql語句

4、百萬、千萬級的資料庫操作合理運用索引,此時sql的最佳化已經用處不大。再多考慮分表

5、

  • 內聯(INNER JOIN):
    內聯是最常見的關聯型別之一。它只返回兩個表之間匹配的行,即滿足關聯條件的行。如果兩個表中的行沒有匹配,那麼這些行將不會包含在結果集中。內聯使用 INNER JOIN 關鍵字來執行,通常像這樣:
`SELECT *
FROM table1
INNER JOIN table2 ON table1.column = table2.column;` 
  • 左聯(LEFT JOIN 或 LEFT OUTER JOIN):
    左聯是一種關聯型別,它返回左邊表中的所有行,即使右邊表中的行沒有匹配。如果沒有匹配的行,右邊表中的列將包含 NULL 值。左聯使用 LEFT JOIN 或 LEFT OUTER JOIN 關鍵字來執行,通常像這樣:
    SELECT * FROM table1 LEFT JOIN table2 ON table1.column = table2.column;
  • 外聯(FULL JOIN 或 FULL OUTER JOIN):
    外聯是一種關聯型別,它返回兩個表中的所有行,並且對於沒有匹配的行,將填充 NULL 值。這意味著即使其中一個表中的行沒有匹配,也會返回結果。外聯使用 FULL JOIN 或 FULL OUTER JOIN 關鍵字來執行,但並非所有的 SQL 實現都支援這種型別的關聯,MySQL 不支援 FULL JOIN,通常像這樣:
    SELECT * FROM table1 FULL JOIN table2 ON table1.column = table2.column;

相關文章