返回顶部
首页 > 资讯 > 数据库 >MySQL-查询数据库(一)
  • 513
分享到

MySQL-查询数据库(一)

mysqljava数据库 2023-09-07 08:09:36 513人浏览 安东尼
摘要

有志者,事竟成 文章持续更新,可以微信搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。

有志者,事竟成
文章持续更新,可以微信搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。

在这里插入图片描述

文章目录


前言

查询数据是指从数据库中获取所需要的数据。查询数据是数据库操作中最常用,也是最重要的操作。用户可以根据自己对数据的需求,使用不同的查询方式。通过不同的查询方式,可以获得不同的数据。在Mysql中是使用select语句来查询数据的。

一、基本查询语句

mysql中,select的基本语法形式如下:

select 属性列表from 表名和视图列表[where 条件表达式1][group by 属性名1 [having 条件表达式2]][order by 属性名2 [asc | desc]]

二、单表查询

单表查询是指从一张表中查询所需要的数据。查询数据时,可以从一张表中查询数据,也可以从多张表中同时查询数据。两者的查询方式有一定的区别。因为单表查询只在一张表上进行操作,所以查询比较简单。

1、查询所有字段

查询所有字段是指查询表中所有字段的数据。这种方式可以将表中所有字段的数据都查询出来。Mysql中有两种方式可以查询表中所有的字段。

列出表的所有字段

MySQL中,可以在select语句的“属性列表”中列出所要查询的表中的所有的字段。例如

下面用select语句查询employee表中的所有字段的数据。在执行select语句之前,先看一下employee表中的所有记录。记录显示如下;

在这里插入图片描述
上面可以看到,employee表中包含6个字段,分别是num、d_id、name、age、sex和homeadder。下面是要查询employee表的所有字段的select语句。

在这里插入图片描述

使用“*”查询所有字段

在MySQL中,select语句的“属性列表”中可以为“*”。其基本语法形式为:

select * from 表名;

“*”可以表示所有的字段。这样就不用列出表中所有字段的名称了。但是,使用这种方式查询时,只能按照表中字段的顺序进行排列,不能改变字段的排列顺序。

2、查询指定字段

查询数据时,可以在select语句的“属性列表”中列出所要查询的字段。这种方式可以指定需要查询的字段,而不需要查询出所有的字段。

下面查询employee表中num、name、sex和homeaddr等4个字段的数据。select语句的代码如下:

在这里插入图片描述

3、查询指定记录

select语句中可以设置查询条件。用户可以根据自己的需要来设置查询条件,按条件进行查询。查询的结果必须满足查询条件。例如,用户需要查询d_id为1001的记录,那么可以设置“d_id=1001”为查询条件。这样查询结果中的记录就都会满足“d_id=1001”这个条件。where子句可以用来指定查询条件。其语法规则如下:

where 条件表达式

其中,“条件表达式”参数指定select语句的查询条件

下面查询employee表中d_id为1001的记录。select语句的代码如下:

在这里插入图片描述

4、带IN关键字的查询

IN关键字可以判断某个字段的值是否在指定的集合中。如果字段的值在集合中,则满足查询条件,该记录将被查询出来;如果不在集合中,则不满足查询条件。其语法规则如下:

[not] in (元素1,元素2,...,元素n)

其中,“not”是可选参数,加上not表示不在集合内满足条件;“元素n”表示集合中的元素,各元素之间用逗号隔开,字符型元素需要加上单引号。

下面使用in关键字进行查询。select语句的代码如下:

在这里插入图片描述

5、带between and的范围查询

between and关键字可以判断某个字段的值是否在指定的范围内。如果字段的值在指定范围内,则满足查询条件,该记录将被查询出来。如果不在指定范围内,则不满足查询条件。其语法规则如下:

[not] between 取值1 and 取值2

其中,“not”是可选参数,加上not表示不在指定范围内满足条件;“取值1”表示范围的起始值;“取值2”表示范围的终止值。

下面使用between and关键字进行查询,查询条件是age字段的取值从15-25。select语句的代码如下:

select * from employee where  age between 15 and 25;

代码执行如下:

在这里插入图片描述

6、带like的字符匹配查询

like关键字可以匹配字符串是否相等。如果字段的值与指定的字符串匹配,则满足查询条件,该记录将被查询出来。如果与指定的字符串不匹配,则不满足查询条件。其语法规则如下:

[not] like '字符串'

其中,“not”是可选参数,加上not表示与指定的字符串不匹配时满足条件;“字符串”表示指定用来匹配的字符串,该字符串必须加单引号或者双引号。“字符串”参数的值可以是一个完整的字符串,也可以是包含百分号(%)或者下划线(_)的通配字符。但是%和_有很大的差别:

“%”可以代表任意长度的字符串,长度可以为0。例如,b%k表示以字母b开头,以字符k结尾的任意长度的字符串。该字符串可以代表bk、buk、book、break、bedrock等字符串。

”只能表示单个字符。例如,b_k表示以字母b开头,以字母k结尾的3个字符。中间的“”可以代表任意一个字符。字符串可以代表bok、bak和buk等字符串。

下面使用like关键字来匹配一个完整的字符串‘Aric’。select语句的代码如下:

select * from employee where name like '赵六';

代码执行如下:

在这里插入图片描述
结果显示,查询出name字段的取值是赵六的记录。其他不满足条件的记录都被忽略掉了。此处的like与等于号(=)是等价的。可以直接换成“=”,查询结果是一样的。代码的执行结果如下:

在这里插入图片描述

结果可以看出,使用like关键字和使用“=”的效果是一样的。但是,这只对匹配一个完整的字符串这种情况有效。如果字符串中包含了通配符,就不能这样进行替换了。

下面使用like关键字来匹配带有通配符‘%’的字符串‘北京%’。select语句的代码如下:

select * from employee where homeaddr like '北京%';

代码执行如下:

在这里插入图片描述

7、查询空值

is null关键字可以用来判断字段的值是否为空值(null)。如果字段的值是空值,则满足查询条件,该记录将被查询出来。如果字段的值不是空值,则不满足查询条件。其语法规则如下:

is [not] null

其中,“not”是可选参数,加上not表示字段不是空值时满足条件。

下面使用is null关键字来查询work表中info字段为空值的记录。select语句的代码如下:

select * from work where info is null;

代码执行如下:

在这里插入图片描述

8、带AND的多条件查询

and关键字可以用来联合多个条件进行查询。使用and关键字时,只有同时满足所有查询条件的记录会被查询出来。如果不满足这些查询条件的其中一个,这样的记录将被排除掉。and关键字的语法规则如下:

条件表达式1 and 条件表达式2 [...and 条件表达式n]

其中,and可以连接两个条件表达式。而且,可以同时使用多个and关键字,这样可以连接更多的条件表达式。

下面使用and关键字来查询employee表中d_id为1001,而且sex为‘男’的记录。select语法的代码如下:

select * from employee where d_id=1001 and sex like '男';

代码执行如下:

在这里插入图片描述

9、带or的多条件查询

or关键字也可以用来联合多个条件进行查询,但是与and关键字不同。使用or关键字时,只要满足这几个查询条件的其中一个,这样的记录将会被查询出来。如果不满足这些查询条件中的任何一个,这样的记录将被排除掉。or关键字的语法规则如下:

条件表达式1 or 条件表达式2 [...or 条件表达式n]

其中,or可以用来连接两个条件表达式。而且,可以同时使用多个or关键字,这样可以连接更多的条件表达式。

下面使用or关键字来查询employee表中d_id为1001,或者sex为‘男’的记录。select语句的代码如下:

select * from employee where d_id=1001 or sex like '男';

在这里插入图片描述
结果显示,num的值为3和4的记录d_id不等于1001。但是,这两条记录的sex字段为“男”。这两条记录也被查询出来。这说明,使用or关键字时,只要满足多个条件中的其中一个,就可以被查询出来。

10、查询结果不重复

如果表中的某些字段上没有唯一性约束,这些字段可能存在这重复的值。例如,employee表中的d_id字段就存在着重复的情况。

在这里插入图片描述
employee表中有两条记录的d_id的值为1001。select语句中可以使用distinct关键字来消除重复的记录。其语法规则如下:

select distinct 属性名

其中,“属性名”参数表示要消除重复记录的字段的名词。

下面使用distinct关键字来消除d_id字段中的重复记录。带distinct关键字的select语句如下:

select distinct d_id from employee;

在执行该select语句之前,先查看d_id字段的实际情况。代码执行如下:

在这里插入图片描述

结果显示,存在两条值为1001的记录,下面使用带distinct关键字的select语句。代码执行如下:

在这里插入图片描述
结果显示,d_id字段只有一条值为1001的记录。这说明,使用distinct关键字消除了重复的记录。

11、对查询结果排序

从表中查询出来的数据可能是无序的,或者其排序顺序不是用户所期望的顺序。为了使查询结果的顺序满足用户的需求,可以使用order by关键字对记录进行排序。其语法规则如下:

order by 属性名 [asc | desc]

其中,“属性名”参数表示按照该字段进行排序;asc参数表示按升序的顺序进行排序;desc参数表示按降序的顺序进行排序。默认的情况下,按照asc方式进行排序。

下面查询employee表中的所有记录,按照age字段进行排序。带order by关键字的select语句如下:

select * from employee order by age;

在这里插入图片描述

12、分组查询

group by关键字可以将查询结果按某个字段或多个字段进行分组。字段中值相等的为一组。其语法规则如下:

group by 属性名 [having 条件表达式] [with rollup]

其中,“属性名”是指按照该字段的值进行分组;“having条件表达式”用来限制分组后的显示,满足条件表达式的结果将被显示;with rollup关键字将会在所有记录的最后加上一条记录。该记录是上面所有记录的总和。

group by关键字可以和group_concat()函数一起使用。group_concat()函数会把每个分组中指定字段值都显示出来。同时,group by关键字通常与集合函数一起使用。集合函数包括count()、sum()、avg()、max()和min()。其中,count()用来统计记录的条数;sum()用来计算字段值的总和;avg()用来计算字段的值的平均值;max()用来查询字段的最大值;min()用来查询字段的最小值。如果group by不与上述函数一起使用,那么查询结果就是字段取值的分组情况。字段中取值相同的记录为一组,但只显示该组的第一条记录。

单独使用group by关键字来分组

如果单独使用group by关键字,查询结果只显示一个分组的一条记录。

下面按employee表的sex字段进行分组查询,查询结果与分组前结果进行对比。先执行不带group by关键字的select语句。语句执行如下:

在这里插入图片描述

带有group by关键字的select语句的代码如下:

在这里插入图片描述

group by关键字与group_concat()函数一起使用

group by关键字与group_concat()函数一起使用时,每个分组中指定字段值都显示出来。

下面按employee表的sex字段进行分组查询。使用group_concat()函数将每个分组的name字段的值显示出来。select语句的代码如下:

select sex,group_concat(name) from employee group by sex;

代码执行如下:
在这里插入图片描述

group by关键字与集合函数一起使用

group by关键字与集合函数一起使用时,可以通过集合函数计算分组中的总记录、最大值、最小值等。

下面按employee表的sex字段进行分组查询。sex字段取值相同的为一组。然后对每一组使用集合函数count()进行计算,求出每一组的记录数。select语句的代码如下:

select sex,count(sex) from employee group by sex;

代码执行如下:
在这里插入图片描述
4、group by关键字与having一起使用

如果加上“Having 条件表达式”,可以限制输出的结果。只有满足条件表达式的结果才会显示。

下面按employee表的sex字段进行分组查询。然后显示记录数大于等于3的分组。select语句的代码如下:

在这里插入图片描述

按多个字段进行分组

MySQL中,还可以按多个字段进行分组。例如,employee表按照d_id字段和sex字段进行分组。分组过程中,先按照d_id字段进行分组。遇到d_id字段的值相等的情况时,再把d_id值相等的记录按照sex字段进行分组。

下面employee表按照d_id字段和sex字段进行分组。select语句如下:

select * from employee group by d_id,sex;

代码执行如下:
在这里插入图片描述
6、group by关键字与with rollup一起使用
使用with rollup时,将会在所有记录的最后加上一条记录。这条记录是上面所有记录的总和。

下面按employee表的sex字段进行分组查询。使用count()函数来计算每组的记录数。并且加上with rollup。select语句如下:

select sex,count(sex) from employee group by sex with rollup;

代码执行如下:

在这里插入图片描述

13、用limt限制查询结果的数量

查询数据时,可能会查询出很多的记录。而用户需要的记录可能只是很少的一部分。这样就需要来限制查询结果的数量。limt是MySQL中的一个特殊关键字。其可以用来指定查询结果从哪条记录开始显示。还可以指定一共显示多少条记录。limit关键字有两种使用方式。这两种方式分别是不指定初始位置和指定初始位置。

不指定初始位置

limit关键字不指定初始位置时,记录从第一条记录开始显示。显示记录的条数有limit关键字指定。其语法规则如下:

limit 记录数

其中,“记录数”参数表示显示记录的条数。如果“记录数”的值小于查询结果的总记录数,将会从第一条记录开始,显示指定条数的记录。如果“记录数”的值大于查询结果的总记录数,数据库系统会直接显示查询出来的所有记录。

下面查询employee表的所有记录。但只显示前两条。select语句如下:

select * from employee limit 2;

执行结果如下。

在这里插入图片描述
2、指定初始位置

limit关键字可以指定从哪条记录开始显示,并且可以指定显示多少条记录。其语法规则如下:

limit 初始位置,记录数

其中,“初始位置”参数指定从哪条记录开始显示;“记录数”参数表示显示记录的条数。第一条记录的位置是0,第二条记录的位置是1。后面的记录依次类推。

下面查询employee表的所有记录,显示前两条记录。select语句如下:

select * from employee limit 1,2;

执行结果如下。

结果中只显示了第2和第3条记录。这个例子可以看出,limt关键字可以指定从哪条记录开始显示,也可以指定显示多少条记录。

三、使用集合函数查询

集合函数包括count()、sum()、avg()、max()和min()。其中,count()用来统计记录的条数;sum()用来计算字段的值的总和;avg()用来计算字段的值的平均值;max()用来查询字段的最大值;min()用来查询字段的最小值。当需要对表中的记录求和、求平均值、查询最大值和查询最小值等操作时,可以使用集合函数。例如,需要计算学生成绩表中的平均成绩,可以使用avg()函数。group by关键字通常需要与集合函数一起使用。

1、count()函数

count()函数用来统计记录的条数。如果要统计employee表中有多少条记录,可以使用count()函数。如果要统计employee表中不同部门的人数,也可以使用count()函数。

下面使用count()函数统计employee表的记录数。select语句如下:

select count(*) from employee;

执行结果如下:
在这里插入图片描述

结果显示employee表中共有4条记录。本例说明,count()函数计算出了employee表中的所有记录的总数。

下面使用count()函数统计employee表中不同d_id值的记录数。count()函数与Goupe by关键字一起使用。select语句如下:

select d_id,count(*) from employee group by d_id;

执行结果如下:

在这里插入图片描述
结果显示,employee表中d_id为1001的记录有两条;d_id为1002的记录有一条;d_id为1003的记录也是一条。从这个例子可以看出,表中的记录先通过group by关键字进行分组。然后,再计算每个分组的记录数。

sum()函数

sum()函数是求和函数。使用sum()函数可以求出表中某个字段取值的总和。例如,可以用sum()函数来求学生的总成绩。

下面使用sum()函数统计grade表中学号为1001的同学的总成绩。select语句如下:

select num,sum(score) from grade where num=1001;

在执行该select语句之前,可以先查看学号为1001的同学的各科成绩。查询结果如下:

在这里插入图片描述
现在执行带sum()函数的select语句,来计算学生的总成绩。执行结果如下:

在这里插入图片描述
结果显示,学号为1001的同学的总成绩为350,正好是他各科成绩的总和。本列可以看出,使用sum()函数计算出了指定字段取值的总和。

sum()函数通常和group by关键字一起使用。这样可以计算出不同分组中某个字段取值的总和。

avg()函数

avg()函数是求平均值的函数。使用avg()函数可以求出表中某个字段取值的平均值。例如,可以用avg()函数来求平均年龄,也可以使用avg()函数来求学生的平均成绩。

下面使用avg()函数计算employee表中平均年龄(age)。select语句如下:

select avg(age) from employee;

执行结果如下:
在这里插入图片描述

max()函数
max()函数是求最大值的函数。使用max()函数可以求出表中某个字段取值的最大值。例如,可以用max()函数来查询最大年龄,也可以使用max()函数来求各科的最高成绩。

下面使用max()函数查询employee表中的最大年龄(age)。select语句如下:

select max(age) from employee;

执行结果如下:

在这里插入图片描述
结果显示,max()函数查询除了age字段的最大值为26。max()函数通常与group by字段一起使用,来计算每个分组的最大值。

min()函数

min()函数是求最小值的函数。使用min()函数可以求出表中某个字段取值的最小值。例如,可以用min()函数来查询最小年龄,也可以使用min()函数来求各科的最低成绩。

下面使用min()函数查询employee表中的最小年龄。select语句如下:

select min(age) from employee;

在这里插入图片描述
结果显示,min()函数查询出来age字段的最小值为15。

四、总结

这里的相关内容还没有整理完毕,文章后面持续更新,建议收藏。

文章中涉及到的命令大家一定要像我一样每个都敲几遍,只有在敲的过程中才能发现自己对命令是否真正的掌握了。

可以微信搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。

来源地址:https://blog.csdn.net/weixin_44096133/article/details/126396185

您可能感兴趣的文档:

--结束END--

本文标题: MySQL-查询数据库(一)

本文链接: https://lsjlt.com/news/397919.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL-查询数据库(一)
    有志者,事竟成 文章持续更新,可以微信搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。 ...
    99+
    2023-09-07
    mysql java 数据库
  • MySQL数据库多表查询
    目录 MySQL数据库多表查询 多表查询 子查询 联合查询 交叉连接 内连接 外连接 ...
    99+
    2017-06-26
    MySQL数据库多表查询
  • mysql查询数据库大小
    查看数据库大小的方法:MariaDB [mysql]> show databases;MariaDB [mysql]> use information_schema;查询所有数据库大小:Mari...
    99+
    2024-04-02
  • MYSQL数据库--连接查询
    连接查询 连接是把不同表的记录连到一起的最普遍的方法。一种错误的观念认为由于MySQL的简单性和源代码开放性,使它不擅长连接。这种观念是错误的。MySQL从一开始就能够很好地支持连接,现在还以支持标准的S...
    99+
    2024-04-02
  • Mysql数据库连接查询
        Mysql数据库连接查询连接是关系数据库模型的主要特点。连接查询是关系数据库中最主要的查询,主要包括内连接、外连接等。通过连接运算可以实现多个表查询。当查询数...
    99+
    2024-04-02
  • Mysql数据库时间查询
    1、查询当前时间  年月日时分秒 select now();   2、查询当前时间 前三小时 的时间点 select subdate(now(),interval 3 hour);   3、查询当前时间  前三天 的时间点 select...
    99+
    2023-09-10
    java sql 开发语言
  • 【MySQL数据库】- 多表查询
    🍁博客主页:👉@不会压弯的小飞侠 ✨欢迎关注:👉点赞👍收藏⭐留言✒ ✨系列专栏:👉MySQL数据库专栏 ✨欢迎加入社区: 👉不会压弯的小...
    99+
    2023-08-17
    数据库 mysql sql
  • 数据库之MySQL查询去重数据
    最近遇到了一个问题,当时我的第一反应是导出来,用wps的Excel表格的删除重复项的功能,简单粗暴又直接,但是没有考虑到数据量太大的情况,会导致Excel打开缓慢。这个时候就考虑有没有更方便快捷的方法,网上也查询了很多方法,但是实践出真知,...
    99+
    2023-09-03
    数据库
  • mysql数据库怎么查询数据的
    在 mysql 中查询数据,可以使用 select 语句,语法:select 列名from 表名where 条件;可选参数包括 distinct(去除重复记录)、li...
    99+
    2024-04-22
    mysql
  • MySQL数据库查询之多表查询总结
    目录多表关系表与表之间的联系:一对多(多对一)多对多一对一多表查询多表查询的分类1.连接查询:2.子查询内连接外连接自连接联合查询子查询标量子查询列子查询行子查询表子查询多表查询案例...
    99+
    2022-11-13
    mysql多表查询语句 mysql多表连接查询方式 mysql多表查询面试题
  • MySQL数据库——MySQL LIKE:模糊查询
    在 MySQL 中,LIKE 关键字主要用于搜索匹配字段中的指定内容。其语法格式如下: [NOT] LIKE  '字符串' 其中: NOT :可选参数,字段中的内容与指定的字符串不匹配时满足条件。字符串:指定用来匹配的字符串。“字符串...
    99+
    2023-10-19
    数据库 mysql java
  • 查询数据(数据库)——简单查询
    目录 1.最简单的查询 (1)查询指定列 (2)查询所有列 (3)查询计算列 (4)为列起别名 (5)使用DISTINCT关键字消除重复元组 2.查询满足条件的元组 (1) 比较大小 (2) 确定范围 (3) 确定集合 (4) 字符匹配 (...
    99+
    2023-10-11
    数据库 sql mysql
  • 如何查询mysql的数据库
    本篇内容介绍了“如何查询mysql的数据库”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • MySQL数据库子查询 sub query
    目录1、基本概念1.1、子查询1.2、主查询1.3、子查询和主查询的关系1.4、子查询的分类2、标量子查询2.1、基本语法2.2、示例3、列子查询3.1、基本语法3.2、示例4、行子...
    99+
    2024-04-02
  • MySQL数据库的查询操作
    目录 一、数据查询语句的基本格式 二、单表查询 查询表中的若干列 查询指定列 查询经过计算的值 选择表中的若干元组 去重 条件查询 order by 子句 聚集函数 group by 子句 三、连接查询 等值与非等值连接查询 外连接 多表连...
    99+
    2023-09-06
    数据库 sql mysql
  • MySQL数据库——复杂查询(二)
    目录 第1关 查询学生平均分 一、本关任务:根据提供的表和数据,查询平均成绩小于60分的同学的学生编号(s_id)、学生姓名(s_name)和平均成绩(avg_score),要求平均成绩保留2位小数点。(注意:包括有成绩的和无成绩的) 二、...
    99+
    2023-10-28
    数据库 mysql
  • MySQL 数据库查询数据,过滤重复数据保留一条数据-
    转自: http://www.maomao365.com/p=10564  摘要: 下文讲述MySQL数据库查询重复数据时,只保留一条数据的方法 实现思路: 在MySQL数据库中没有row_number函数,所以我们需变向实现此功能...
    99+
    2021-10-02
    MySQL 数据库查询数据,过滤重复数据保留一条数据-
  • MySQL数据表内容查询(一)
    MySQL数据表内容查询(一) 1 内容 数据表内容的查询主要就是DQL(数据库查询语言的使用),主要使用SELECT关键字去进行查询操作 2 使用 2.1 不带筛选条件的(没有wher...
    99+
    2023-09-22
    mysql 数据库 DQL 谓词 基础查询
  • mysql查询某一天的数据
    查询 mysql 某一天的数据有三种方法:1. 使用 date() 函数,仅返回日期部分;2. 使用 between 运算符,指定日期范围;3. 使用 curdate() 函数,返回今天...
    99+
    2024-08-01
    mysql
  • 有关MySQL onlinedb数据库的一些查询语句
    (1)查询users表,列出用户的所有信息。 SELECT * FROM users; (2)查询goods表,列出商品编号、名称和进货量(库存量+销售量,列名为purchases). SELECT gid, gname, ...
    99+
    2023-10-26
    数据库 mysql sql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作