MySQL:2、MySQL基礎語法
Linux命令補充
Windows和Linux之間是rz sz
scp:
A機器(Linux)將檔案或者資料夾傳到B機器(Linux)
scp xxx.log root@xxx.xxx.xxx.xxxIP地址:/xxx/xxx
scp -r /xxx root@xxx.xxx.xxx.xxxIP地址:/xxx/xxx
A機器用xxx使用者傳送:
scp xxx.log IP地址:/xxx/xxx
等價於
scp xxx@IP地址:/xxxx/xxxx
軟連線:
路徑:
絕對路徑:cd /xxx/xxx/xxx
相對路徑:cd xxxx
ln -s 實際路徑 軟連線路徑(最好使用絕對路徑)
MySQL的基本概念
database db :資料庫
table : 表
db1:t1, t2, t3
db2:t2, t3, t4
欄位型別
http://www.runoob.com/mysql/mysql-data-types.html
整數型:int
小數型:float/double
字元:char
字串:varchar
時間:timestamp
常規命令
使用某個資料庫
use 資料庫名;
檢視資料庫下面所有的表
show tables;
檢視某個表的表結構
show create table 表名;
建立資料庫
create database 資料庫名;
建立表
create table 資料庫名.表名(欄位 型別,……)
例如:
create table user(
id int,
name varchar(128),
memory double,
sex char(1),
do varchar(100),
cretime timestamp
)CHARSET=utf8;
刪除表
drop table 表名;
插入資料
insert into 資料庫名.表名(列名) values(對應的值);
例如:
insert into user(id,name,memory,sex,do,cretime) values(1,'小米',10.22,'b','在打遊戲','2017-12-11 00:00:00');
insert into user values(1,'小米',10.22,'b','在打遊戲','2017-12-11 00:00:00');
insert into user(id, name) values(1,'小米');
查詢
select 欄位 from 資料庫名.表名;
例如
select * from user;
select * from user where id=3;
*:查詢所有的列
更新
update 資料庫名.表名 set 欄位名稱=新的值
例如:
update user set sex='g' where id=1;修改id為1的資料
update user set sex='g';修改全部的行
刪除
delete from 資料庫名.表名
例如:
delete from user;刪除所有的資料,慎用
delete from user where id=3;刪除id為3的資料
排序
order by xxx desc | asc
例如:
select * from user order by cretime
select * from user order by cretime desc;
select * from user order by cretime asc;
只取多少行資料
limit n
例如:
select * from user limit 2;
聚合語法
select 列1,列2……,sum(memory) from user group by 列1,列2…… having sum(memory) > 3000
聚合函式
count() : 求數量
sum() : 求和
avg() : 求平均
欄位別名
as xxx
等價SQL:使用子查詢語法
select * from(select dept, sum(sal) as sum_sal from salary group by dept) t where t.sum_sql > 5000;
兩張表關聯:
左連線:
A left join B on A.欄位=B.欄位 工作中用的最多 A表資料最全 <-- B表補全
右連線:
A right join B on A.欄位=B.欄位 A表補全 --> B表資料最全
內連線:
A inner join B on A.欄位=B.欄位 慎用
注意點:
只要滿足on條件,有幾行算幾行
例如:
select a.* b.deptno,b.dname from emp a left join dept b on a.deptno=b.deptno;
select a.* b.deptno,b.dname from emp a right join dept b on a.deptno=b.deptno;
建立db,user
create database 資料庫名;
grant all privileges on 資料庫名.* to 某個使用者名稱@'%' identified by '密碼';
flush privileges;
注意點
只要涉及許可權修改,必須執行flush privileges;
% 允許所有的IP都可以訪問(許可權危險)
192.168.%.%
建立使用者並授權,同時限制只能在某個IP或者IP段上的機器才能訪問
謹記:
flush privileges; 或者重啟MySQL服務
補充點
1.登入
mysql -uroot -p123456 -h127.0.0.1
2.dbeaver(企業使用的軟體)
mysqladmin環境變數
vi .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
export MYSQL_BASE=/usr/local/mysql
export PATH=${MYSQL_BASE}/bin:$PATH
PS1=`uname -n`":"'$USER'":"'$PWD'":>"; export PS1
相關文章
- mysql基礎語法MySql
- MYSQL基礎語法的使用MySql
- MySQL-基礎語法教程MySql
- MySQL基礎語法實踐MySql
- Linux下MySQL基礎及操作語法LinuxMySql
- MySQL基礎(2)MySql
- mysql使用語法2MySql
- MySQL基礎語句MySql
- Day2--Mysql基礎MySql
- MySql基礎知識(2)MySql
- MySQL基礎之DML語句MySql
- MySQL指南之SQL語句基礎MySql
- 入門MySQL——基礎語句篇MySql
- MySQL基礎2——常用命令MySql
- MySQL Join語法MySql
- 常用MySQL語法MySql
- mysql基本語法MySql
- MYSQL語法(一)MySql
- mysql 語法1MySql
- 【MySQL】MySQL基礎(SQL語句、約束、資料型別)MySql資料型別
- 重返MySQL之MySQL基礎MySql
- MySQL基礎MySql
- python基礎語法2---運算子Python
- Java基礎-語法基礎Java
- Day3--練習MySQL基礎語句MySql
- 基礎語法
- MySQL基礎概念MySql
- MySQL基礎命令MySql
- MySQL——索引基礎MySql索引
- mysql基礎_索引MySql索引
- mysql基礎使用MySql
- mysql索引基礎MySql索引
- Scala學習筆記(2)-基礎語法筆記
- scala基礎語法-----Spark基礎Spark
- Python基礎:語法基礎(3)Python
- Python基礎入門_2基礎語法和變數型別Python變數型別
- mysql資料庫sql語句基礎知識MySql資料庫
- MySql 常用語法彙總MySql
- MySQL 函式語法整理MySql函式