sql必知必会2-数据库查询

作者: liluchang 分类: 数据库 发布时间: 2018-03-08 10:34

1,查询表数据,如果要查询指定数据库数据,可以在表前面加上数据库名,用.连接。下面为查询user表的user_name数据。用*可以查询表所有column数据,但是不推荐使用*,会降低数据库检索效率。

select user_name from user;
select * from user;

2,查询指定列的数据,查询articles表id,title,info,created字段,字段可以用,分开。

select id,title,info,created from articles;

3,查询指定列当中不同的数据,比如说,我们需要查询文章表中所有作者的id,查询所有的话,

select user_id from article;

但是上面的会查询出来所有的列表的id,即使它是相同的。如果我们只需要查询出来id不同的数据,那么可以

select DISTINCT user_id from articles;

上面的语句会查询出articles表中所有的不相同的用户id,如果只有三个用户发了文章,无论发多少篇文章,只会有三个数据。如果使用distinct,那么它必须放在字column前面。

4,限定查询的数量。

抱歉,虽然我们能实现查询指定数量的行数,但是,各种数据库中这一sql实现方式并不相同。下面给出一些实现方式

//sel server和access可以试用top关键字来实现返回多少行
select TOP 5 prod_name from products;

//DB2可能会习惯使用下面特定的sql语句
select rpod_name from products fetch first 5 rows only;

//如果是oracle,需要机遇rownum(行数计算器)来计算行,例如 
select prod_name from products where rownum <=5; 

//mysql,mariadb,postgreSQL或者SQLLite需要使用LIMIT子句,例如 
select prod_name from products limit 5 offset 2; 
select prod_name from products limit 5,2;

最后两个语句是一样的,表示查询5条,从2开始查,请注意,limit的开始是从0开始的,所以2是第三条。如果不添加后面的内容,默认从0开始查。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

标签云