MySQL学习笔记(七)查找记录

如何在MySQL中查找数据 数据库中表的数据被划分为若各个页(page),每个页中又存储了很多行记录,而我们往MySQL中插入的每行记录就放到页当中的行记录中,InnoDB的页分为以下几个部分InnoDB的页被划分为了7个部分,有的部分大小是确定的,有的部分不确定,各个部分说明如下File Header,表⽰页的⼀些通⽤信息,占固定的38字节。Page Header,表⽰数据页专有的⼀些信息,占固定的56个字节。Infimum + Supremum,两个虚拟的伪记录,分别表⽰页中的最⼩和最⼤记录,占固定的26个字节。User Reco 阅读详情

1. 查找记录

SELECT select_expr [,select_expr ...]

[    FROM table_references

     [WHERE where_condition]

    [GROUP BY {col_name | position} [ASC | DESC],...]

     [HAVINGwhere_condition]

     [ORDER BY {col_name | expr | position} [ASC | DESC], ...]

     [LIMIT {[offset,] row_count | row_count OFFSET offset}]

]

查询表达式:select_expr

(1)每一个表达式表示想要的一列,必须有至少一个。

(2)多个列之间用英文逗号分隔。

(3)星号(*)表示所有列。tbl_name.* 可以表示命名表的所有列,常用于多数据表的情况

(4)查询表达式可以使用[AS] alias_name为其赋予别名

//将user表中的id和username换成别名userid与uname

SELECT id AS userid,username AS uname FROM user;

注意:当AS忽略时,SELECT id username FROM user;语句将会用username作为id的别名,因此,一般不要忽略AS。

(5)别名可用于GROUP BY,ORDER BY 或HAVING子句。

2. 条件表达式:WHERE

对记录进行过滤,如果没有指定WHERE子句,则显示所有记录。在WHERE表达式中,可以使用MySQL支持的函数或运算符。

3. 查询结果分组:GROUP BY

[GROUP BY {col_name | position} [ASC | DESC],...]

注意:ASC与DESC分表表示升序和降序

示例:

//按照年龄进行分组

SELECT age FROM user GROUP BY age;//一般不建议采用位置的方式

4. 分组条件:HAVING

[HAVINGwhere_condition]

示例:

//对sex进行分组,分组的条件为age大于20

//注意条件处的age要在SELECT后出现或者条件为一个聚合函数

SELECT sex,age FROM user GROUP BY sex HAVING age > 20;

//对sex进行分组,分组条件为id大于2

SELECT sex FROM user GROUP BY sex HAVING count(id) > 2;

5. 对查询结果进行排序

[ORDER BY {col_name | expr | position} [ASC | DESC], ...]

示例:

//按照id字段将序输出

SELECT * FROM user ORDER BY id DESC;

//可以添加多个排序条件

//表示按age升序排序,当age相同时,将相同的字段按id将序排序

SELECT * FROM user ORDER BY  age,id DESC;

7.限制查询结果返回的数量

[LIMIT {[offset,] row_count | row_count OFFSET offset}]

示例:

//显示返回结果的前两条记录

SELECT* FROM user LIMIT 2;


//显示地3,4条记录,注意记录时从0开始,而且下面的第一个2与id值没有任何关系,是相对位置。

SELECT * FROM user LIMIT 2,2;

8. 将user表中年龄大于20的记录中的username字段写入新创建的test1表中

//创建表test1

CREATE TABLE test1( id TINYINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,

                                    username VARCHAR(20));

//按条件插入表test1

INSERT INTO test1(username)SELECT username FROM user WHERE age >= 20;

//insert into test1(id,username) select id,username from user where id >=2;

MySQL实现每分钟扫描一次数据库,查找16分钟前的记录和15分钟 以前-16分钟的记录 描述 每分钟扫描一次数据库,查找15分钟以前-16分钟的记录。 先从send_orders获取符合条件的记录,并提取master_ia字段的值与order__id的值 然后从masterhas_slave表里根据上一步得到的master_1d值查我匹配的slave_1d的值 用上一步得到的salve__id与第一步得到的master_id及order_1d组合的记录... 阅读详情

相关推荐

stm32h743的hrtim使用生成pwm波

HRTIM(High-Resolution Timer)是一种高精度定时器,其时钟频率可直接与CPU主频同步,达到480MHz。相比之下,其他传统定时器需挂载在APB总线上,受总线频率限制,最高仅支持240MHz。这种直接时钟同步机制显著提升了定时器的分辨率和精度。

d13211322的博客 1611

MySql常用操作

数据路用户管理 连接MySQL 连接MySQL包括两方面的内容:一方面是连接本地MySQL;另一方面是连接远程MySQL。命令格式:mysql -h 主机地址 -u 用户名 -p 用户密码 新增用户 MySQL数据库在安装时会创建一个管理员root用户,新增用户的命令格式:GRANT SELECT on 数据库.* to 用户名@登录主机 identified by “密码” 修改用户密码 在5.7版本的MySQL中,密码存放在authentication_string中,再修改密码时,用户要获

m0_56215889的博客 341

fNIRS 公开数据集整理

关注“心仪脑”查看更多脑科学知识的分享。 关键词:数据整理、fNIRS 之前我们向大家推送了 Public Neuroscience Dataset 系列主题的第一期:《EEG公开数据集》,我们同时意识到大家对于神经科学公开数据集的需求。本期是该系列主题的第二期,我们在延续第一期初衷的基础上,整理了功能性近红外光谱(fNIRS)技术的公开数据集。 fNIRS 是一种非侵入性、便携且价格低廉的光学神经成像技术,它具有可观的空间和时间分辨率。因fNIRS技术问世较EEG晚了许多,所以应用此技术开展研究发.

psybrain的博客 4271

Mysql学习笔记

一、对数据库的操作 1. 进入Mysql数据库 mysql -h 主机名 -u 用户名 -p 解释: -h:后面接的是主机名,表示你要连接到哪台主机的 MySQL数据库。本机为localhost -u:后面接的是用户名,MySQL默认的就是root。 -p:指定需要使用密码登陆MySQL数据库,如果密码为空,该参数可以省略。 2. 查看已有的数据库 show databases; 3...

YukariRan的博客 399

决策树简介/PPT

最近给我们组新生讲了决策树的相关知识,以下是所做的PPT,参考了网络资源。

垃圾就应该待在垃圾桶里的博客 3795

Eureka自我保护机制

Eureka自我保护机制 默认情况下,当eureka server在一定时间内没有收到实例的心跳,便会把该实例从注册表中删除(默认是90秒),但是,如果短时间内丢失大量的实例心跳,便会触发eureka server的自我保护机制,比如在开发测试时,需要频繁地重启微服务实例,但是我们很少会把eureka server一起重启(因为在开发过程中不会修改eureka注册中心),当一分钟内收到的心跳数大量减少时,会触发该保护机制。可以在eureka管理界面看到Renews threshold和Renews(last

Soul_Ming的博客 542

mysql查询sex为男的记录总数_mysql数据库查询操作

数据查询语言SELECT 列名1,列名2...FROM 表名 [WHERE条件]查询所有字段用* 不带where条件就把表的所有记录查出来= //赋值和判断都是!= <> //两种不等于 <= >=OR 或者 ||AND 且 &&BETWEEN 5 AND 10INNOT INLIKE '%值%'一些简单的查询,以user表为例,sex...

weixin_32063439的博客 4103

新能源车主必看:用高德API+充电站数据制作跨城出行充电规划工具(附完整代码)

本文为新能源车主提供了一份详细的跨城出行充电规划工具构建指南。通过整合高德地图API与充电站数据,手把手教你使用Python开发一个智能规划系统,可自动规划路线并推荐沿途充电站,有效缓解里程焦虑。文章包含完整代码、核心算法解析及可视化实现,帮助车主实现个性化、高效的出行规划。

tgb3456789的博客 899

易语言mysql查找记录_易语言应用接口支持库MySql支持库查找记录

查找记录是我们执行mysql数据库的基本操作,查找满足条件的记录,返回记录集句柄.注意执行这条语句后不需要再执行 返回记录集 命令。查找记录查找记录 命令 操作系统支持:Windows 所属类别:MySql支持库查找满足条件的记录,返回记录集句柄.注意执行这条语句后不需要再执行 返回记录集 命令。语法: 整数型 查找记录 (MySql句柄,表名,字段名,查找条件,排序条件)参数名描述MySql句柄...

weixin_30350163的博客 2756

深度学习论文: Towards Total Recall in Industrial Anomaly Detection

在大规模工业制造中,能够准确检测出有缺陷的零件至关重要。我们在这项工作中面临的一个特殊挑战是冷启动问题:仅使用正常的示例图像来训练模型。虽然可以针对每个类别手动设计解决方案,但我们的目标是构建能够自动适用于多个任务的系统。最佳的方法是将ImageNet模型的嵌入特征与异常检测模型结合起来。在本文中,我们在这一研究基础上进行了扩展,并提出了PatchCore,它利用了一个具有最大代表性的正常补丁特征内存库。通过这种方法,我们能够更好地解决冷启动问题,并提高系统在多任务上的性能。

mingo_敏 1875

智能生活中枢:基于 ESP32-S3 的桌面智能助手与日程提醒终端设计与实现

本文完成了基于 ESP32-S3 的桌面智能助手与日程提醒终端的完整设计,实现了时间同步、日程管理、声光提醒、环境监测、本地存储等核心功能。硬件接线简洁、软件逻辑清晰,可直接制作成品使用。硬件方案:以 ESP32-S3 为核心,搭配 OLED、DS3231、DHT11、按键、声光模块,接线标准化、易复刻;软件方案:基于 Arduino 开发,提供标准 Mermaid 软件流程图,代码模块化、可直接编译运行;核心功能:网络授时、本地日程管理、掉电存储、声光提醒、温湿度监测,满足桌面智能助手全场景需求。

weixin_42300449的博客 209

MySQL 如何查找并删除重复记录

介绍了如何在 MySQL 中查找并删除重复记录,包括使用 GROUP BY 分组、子查询或者连接查询等方法查找单个字段或者多个字段中的重复数据,以及使用 DELETE FROM 语句、子查询、中间表和窗口函数等方法实现重复数据的删除。

Tony.Dong的专栏 4767

【物联网】基于LORA组网的远程环境监测系统设计(ThingsCloud云平台版)_资料编号34

实现一主多从的LORA组网远程通信,主机和两个从机都配备了STM32F103单片机与 LoRa 模块,主机作为中心设备及WIFI网关,负责接收和发送数据到远程物联网平台和手机APP,两个从机则负责采集数据并通过各自的 LoRa组网将数据发送给主机。

嵌入式阿齐Archie 1万+

MySQL中记录(Documents)的基本操作——添加记录和查找记录

在MySQL中,我们通常不称数据表中的记录为“文档”,而是称之为“行”或“记录”。记录表示为JSON对象。在内部,它们以高效的二进制格式存储,从而实现快速查找和更新。

u011565038的博客 1451

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

MYSQL查找并处理重复记录的方法

本文主要给大家介绍了关于MySQL中查询、删除重复记录的方法,分享出来供大家参考学习,下面来看看详细的介绍:

wing 7110

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

在MySQL中查找重复记录

I want to pull out duplicate records in a MySQL Database. 我想在MySQL数据库中提取重复记录。 This can be done with

w36680130的博客 1115

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Mysql如何查看操作记录

分为文件记录日志和数据库记录日志两种方式,效果相同 一 文件记录数据库操作日志: 首先进入mysql输入指令 show variables like 'gen%'; general_log是开启还是关闭状态,以及这个帐号的general_log文件在哪 如果没有开启,请先设置开启 set global general_log=ON; 查看log: cat /目录/日志.log 二 数据库...

锅巴胸的博客 6万+

Mysql在页内是怎么查找数据的?

InnoDB的B+树叶子节点采用"页目录结构"实现高效查找。该结构将16KB数据页内的有序记录划分为若干小组(槽),每个槽存储指向组内最大记录的指针。查找时先在槽数组中进行二分查找定位目标组,再在组内(通常4-8条记录)进行顺序遍历。这种设计结合了二分查找的高效性和链表结构的插入便利性,既避免全页遍历的O(N)复杂度,又通过限制组大小确保局部遍历的高效性。页目录结构完美平衡了读写性能,是InnoDB实现快速记录检索的关键机制。

Jackasher的博客 1322

Mysql索引的结构以及查询一条记录的流程

InnoDB读取数据、B+树结构

m0_47160811的博客 983

查找MySQL数据库user表中是否存在ID=1的记录

查找MySQL数据库user表中是否存在ID=1的记录 如果直接查找该字段的值,会报错说该字段不存在(null) 所以应当按如下方式查找:(查找该ID的个数) String SQL = "select count(*) from user where phone_id=?"; count=jdbcTemplate.queryForInt(SQL,new Object[] {phone_id})...

weixin_43751710的博客 5545

mysql查找并删除记录_mysql 子查询删除记录

mysql 子查询删除记录mysql 可以通过子查询得到要删除的记录条件,然后通过子查询得结果匹配要删除的记录。但是 mysql 不能直接删除子查询表中的数据,必须通过一个临时表来解决。例如:delete from t_transaction where exists(select d.* from t_ti_category a,t_category b,t_trade_item c,t_tra...

weixin_39844515的博客 2046

mysql表中查找_MySQL查询从表中查找替代记录

要从表中查找替代记录,您需要使用OR条件,如以下语法所示:select*fromyourTableNamewhereyourColumnName=yourValue1ORyourColumnName=yourValue2…...N;让我们首先创建一个表-mysql>createtableDemoTable772(IdintNOTNULLAUTO_INCREMENT...

weixin_29476545的博客 178

mysql查找2个字段数据相等_mysql如何去除两个字段数据相同的记录

mysql如何去除两个字段数据相同的记录关注:209答案:5mip版解决时间 2021-01-16 00:22已解决2021-01-15 13:51mysql如何去除两个字段数据相同的记录最佳答案2021-01-15 14:17其实你会用英文搜索的话。可以很方便在stack overflow上 找到相关的信息 真的学CS的就不要用百度了 用google你会发现一个不一样的世界的随便贴一个s...

weixin_31847579的博客 3009

mysql 查找最近一条记录_关于mysql查询最近一条记录

关于mysql查询最近一条记录 最近项目中遇到需要查询记录当前时间最近的一条记录的问题,开始感觉无从下手,后来逐步发现了三种解决方案。 下策——查询出结果后将时间排序后取第一条 select * from a where time<="2017-03-29 19:30:36" order by time desc limit 1 这样做虽然可以取出当前时间最近的一条记录,但是一次查询需要将表遍历一遍,对于百万以上数据查询将比较费时;limit是先取出全部结果,然后取第一条,相当于查询中占

lucky的专栏 4760
上一篇: MySQL学习笔记(六)插入、更新、删除记录
下一篇: MySQL学习笔记(八)子查询
mengrennwpu
博客等级 码龄15年 262粉丝 87原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mengrennwpu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值