欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

mysql常用的语句

程序员文章站 2022-06-17 17:28:20
...

(一) 创建,删除和最基本查询: 显示数据库 mysql-show databases; 创建数据库 mysql-create database db; 删除数据库 mysql-drop database db; 选择数据库 mysql-use db 创建表 mysql-create table mytable(name varchar(20),sex(char(1),birth date); 删除

(一)创建,删除和最基本查询:

显示数据库 mysql->show databases;

创建数据库 mysql->create database db;

删除数据库 mysql->drop database db;

选择数据库 mysql->use db

创建表 mysql->create table mytable(name varchar(20),sex(char(1),birth date);

删除表    mysql->drop table mytable;

显示表的内容 mysql->show tables;

显示表的结构 mysql->describe mytable;

更新:

1、对列的操作:

在一个表中增加一条字段 mysql->alter table yourtable add name varchar(20)not

null;

删除一个字段 mysql->alter table yourtable drop name ;

2、对行的操作:

插入一条记录 mysql->insert into mytable values('summer','m','1983-08-24');

删除一条记录 mysql->delete from mytable where name='summer';

修改一条记录 mysql->update mytable set sex='vm' where name='summer';

插入多条记录 mysql->insert into mytable select *from yourtable;(

这种形式的INSERT 语句中,新行的数据值不是在语句正文中明确地指定的.而是语句中指定的一个数据库查询. 该查询的逻辑限制:

?查询不能含有ORDER BY子句. ?查询结果应含有与INSERT语句中列数目相同的列,且数据类型必须逐列兼容. )

简单查询:

1.在查询结果中显示列名

a.用as关键字:select name as '姓名' from students order by age

b.直接表示:select name '姓名' from students order by age

(二)CURD

(1). 查询语句:

select username,uid from supesite.supe_userspaces where catid='91';

select T1.image from supesite.supe_spaceimages AS T1 INNER JOIN supesite.supe_spaceitems AS T2 ON T1.itemid = T2.itemid where T2.username = '".$username."' LIMIT 1;

(2).插入语句:

insert into cdb_members (username,password) values ('$username','$passwd');

(3).更新语句:

update vpopmail.vpopmail set pw_privilege='1' where pw_name='haha';

(4).修改表结构语句:

alter table vpopmail add pw_haha int (10) default null;

alter table vpopmail drop pw_haha;

alter table haha add uid int (10) not null auto_increment, add primary key (uid);

(5). 创建表 数据库:

create table lian (a int,b char(10));

create database jie;

(6) .删除数据库 表 记录:

drop database jie;

drop table lian;

delete from lian where username='dd';

(7) mysql 备份

mysqldump --all-databases > all_databases.sql

(8) mysql 恢复

mysql

(9) 创建mysql帐户

mysql> grant all privileges on *.* to 'lianbinjie'@'localhost'

-> identified by '840611';

mysql> GRANT SELECT,UPDATE ON *.* TO 'monty'@'%' (可以网络访问账户)

-> IDENTIFIED BY '840611';

(10)更改已有帐户的密码

mysql> grant all privileges on *.* to 'lianbinjie'@'localhost'

-> identified by '840611';

mysql> flush privileges;

Desc tableName ;可以查询表的结构;

UNION 将返回两个查询的结果并去除其中的重复部分

SQL> SELECT NAME FROM table1

UNION

SELECT NAME FROM table2;

UNION ALL 与UNION 一样对表进行了合并但是它不去掉重复的记录

INTERSECT 返回两个表*有的行看下例它将返回两个表中有存在的员工

输入:

SQL> SELECT * FROM FOOTBALL

INTERSECT

SELECT * FROM SOFTBALL


MINUS 返回的记录是存在于第一个表中但不存在于第二个表中的记录例如

输入:

SQL> SELECT * FROM FOOTBALL MINUS SELECT * FROM SOFTBALL


In的用法:

SQL> SELECT * FROM FRIENDS WHERE STATE IN('CA','CO','LA')

在in中也可以用数字:

SQL> SELECT *

2 FROM FRIENDS

3 WHERE AREACODE IN(100,381,204)


如果你想要查找符合某一范围的记录例如

输入/输出:

SQL> SELECT * FROM PRICE WHERE WHOLESALE 0.25 AND WHOLESALE 0.75

或者:用bewteen BETWEEN 操作将包括边界值

SQL>SELECT * FROM PRICE WHERE WHOLESALE BETWEEN 0.25 AND 0.75