07月10, 2014

mysql数据库基础查询知识记录积累

mysql数据库基础知识:

--mysql中删除表中的某一列:
alter table 表名称 drop 列名称;
--新添加一列到原有表中某一个字段(即某一列)的后面:
alter table `myuser`(表名称) add `title`(新添加的某一列) varchar(12) not null after `username`(原先表中的某一列);
--统计表中查询出的数据中不重复的条数(DISTINCT):
select count(DISTINCT catname) as total from (select catname,moduleid from cnpawn_category where moduleid=21 and parentid=0) as a;
--在mysql中,如果在命令行中的窗口中执行sql语句,可以使用下面的语句将输入的命令建立成sql文件:
tee D:/www/20140710.sql 即可在D盘的www文件夹下面建立一个20140710.sql的文件,记录输入的sql语句.
mysql命令行中执行.sql的文件命令为:source D:/WWW/a.sql;(使用source命令,后面为文件的路径,注意使用反斜杠哦!);
--显示表的结构:
desc 表名;
show databses(显示所有的数据库);use 数据库名;(选择数据库); show tables(显示该数据库下面所有的表);select * from 表名;(查询该表下面所有的数据);

显示一个表的建表语句:

show create table 表名称(ecs_goods);

mysql中把一个表的数据批量导入另一个表中:(如果这两个表在不同的数据库中,则我们应该加上前缀,及数据库名.表名称,若在同一个数据库中则不需要.) 类别一、 如果两张张表(导出表和目标表)的字段一致,并且希望插入全部数据,可以用这种方法:(此方法只适合导出两表在同一database)

INSERT INTO 目标表 SELECT * FROM 来源表;

eg:sql语句如下:

insert into goods select * from ecshop.ecs_goods;

MySQL字段自增长AUTO_INCREMENT的学习笔记 1、创建表时指定AUTO_INCREMENT自增值的初始值(即起始值):

CREATE TABLE XXX (ID INT(5) PRIMARY KEY AUTO_INCREMENT) AUTO_INCREMENT=100;

2、通过 ALTER TABLE 修改初始值(但是要大于表中的 AUTO_INCREMENT 自增值,否则设置无效):

ALTER TABLE XXX AUTO_INCREMENT=100;

3、如果自增序列的最大值被删除了,则在插入新记录时,该值被重用: 就是说如果表中原本有AUTO_INCREMENT属性值连续为78、100的值,但100这个数据被删除了,下此再添加数据的时候自增值为101,100被重用了。 即使在你将整个表中的所有数据delete清空后,之前的自增序列最大值还是会被重用。 解决办法是: 使用 ALTER TABLE XXX AUTO_INCREMENT=0; 重新设置自增初始值。

mysql copy表或表数据常用的语句整理汇总:

phpcms中新闻表和新闻内容表数据联查sql语句记录:

select mh_news.id,mh_news.inputtime,content,description from mh_news left join mh_news_data on mh_news.id=mh_news_data.id;

用mysql命令同时删除一条数据,新闻表和新闻内容表:

delete mh_news,mh_news_data from mh_news left join mh_news_data on mh_news.id =mh_news_data.id where mh_news.id=372;

本文链接:https://901web.com/post/mysql数据库基础查询知识记录积累.html

-- EOF --

Comments

请在后台配置评论类型和相关的值。