找到 4379 篇文章 关于 MySQL
698 次浏览
当您在目标表中插入记录时,如果列数与值数不匹配,就会发生这种类型的错误。为了演示,让我们创建一个表:mysql> create table errorDemo -> ( -> User_Id int NOT NULL AUTO_INCREMENT, -> User_Name varchar(20), -> PRIMARY KEY(User_Id) -> ); 查询成功,0 行受影响 (0.47 秒)错误如下:mysql> insert into errorDemo values('John'); 错误 1136 (21S01): 第 1 行的列数与值数不匹配为了避免此类错误,您需要使用以下语法:insert into yourTableName(yourColumnName1, yourColumnName2, ...N)values(yourValue1, yourValue2, ....N);插入一些... 阅读更多
169 次浏览
要将行恢复到默认列值,让我们首先创建一个演示表:mysql> create table defaultDemo -> ( -> Id int -> ); 查询成功,0 行受影响 (0.48 秒)使用 insert 命令在表中插入一些记录。查询如下:mysql> insert into defaultDemo values(10); 查询成功,1 行受影响 (0.25 秒) mysql> insert into defaultDemo values(20); 查询成功,1 行受影响 (0.13 秒) mysql> insert into defaultDemo values(30); 查询成功,1 行受影响 (0.14 秒) mysql> insert into defaultDemo values(40); 查询成功,1 行受影响 (0.11 秒) mysql> insert into defaultDemo values(80); 查询成功,... 阅读更多
1K+ 次浏览
让我们首先创建一个表:mysql> create table recordsDemo -> ( -> UserId int, -> Value int -> ); 查询成功,0 行受影响 (0.52 秒)现在使用 insert 命令在表中插入一些记录。查询如下:mysql> insert into recordsDemo values(1, 10); 查询成功,1 行受影响 (0.17 秒) mysql> insert into recordsDemo values(3, 598); 查询成功,1 行受影响 (0.18 秒) mysql> insert into recordsDemo values(5, 786); 查询成功,1 行受影响 (0.25 秒) mysql> insert into recordsDemo values(7, 189); 查询成功,1 行受影响 (0.16 秒) mysql> insert into recordsDemo values(9, 345); ... 阅读更多
200 次浏览
让我们看看如何在 MySQL 中遍历存储过程:mysql> DELIMITER // mysql> CREATE PROCEDURE do_WhileDemo(LastValue INT) -> BEGIN -> SET @loop = 0; -> REPEAT -> SET @loop= @loop+ 1; -> select @loop; -> UNTIL @loop >LastValue -> END REPEAT; -> END // 查询成功,0 行受影响 (0.17 秒) mysql> DELIMITER ;现在使用 CALL 命令调用存储过程。查询如下:mysql> call do_WhileDemo(10);以下是输出结果+-------+ | ... 阅读更多
107 次浏览
您需要使用 rand() 函数从 MySQL 中选择随机结果。语法如下:select *from yourTableName order by rand() limit 1;为了理解以上语法,让我们创建一个表。创建表的查询如下:mysql> create table selectRandomRecord -> ( -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> StudentName varchar(20) -> ); 查询成功,0 行受影响 (0.53 秒)使用 insert 命令在表中插入一些记录。查询如下:mysql> insert into selectRandomRecord(StudentName) values('John'); 查询成功,1 行受影响 (0.17 秒) mysql> insert into selectRandomRecord(StudentName) values('Carol'); 查询成功,... 阅读更多
105 次浏览
让我们首先创建一个表:mysql> create table LimitWithStoredProcedure -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> Name varchar(10) -> ); 查询成功,0 行受影响 (0.47 秒)使用 insert 命令在表中插入一些记录。查询如下:mysql> insert into LimitWithStoredProcedure(Name) values('John'); 查询成功,1 行受影响 (0.15 秒) mysql> insert into LimitWithStoredProcedure(Name) values('Chris'); 查询成功,1 行受影响 (0.15 秒) mysql> insert into LimitWithStoredProcedure(Name) values('Maxwell'); 查询成功,1 行受影响 (0.28 秒) mysql> insert into LimitWithStoredProcedure(Name) values('Bob'); 查询成功,1 行受影响 (0.24 秒) mysql> insert into LimitWithStoredProcedure(Name) values('David'); 查询 ... 阅读更多
490 次浏览
语法如下:update yourTableName set yourColumnName1=yourValue where yourColumnName2=yourValue order by yourIdColumnName DESC LIMIT 1;为了理解以上语法,让我们创建一个表。创建表的查询如下:mysql> create table UpdateWithHighestDemo -> ( -> UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> UserStatus tinyint, -> UserRank int -> ); 查询成功,0 行受影响 (0.61 秒)使用 insert 命令在表中插入一些记录。查询如下:mysql> insert into UpdateWithHighestDemo(UserStatus, UserRank) values(1, 78); 查询成功,1 行受影响 (0.12 秒) mysql> insert into UpdateWithHighestDemo(UserStatus, UserRank) values(0, 118); 查询 ... 阅读更多
1K+ 次浏览
您可以使用 format() 函数进行分隔符设置。它将在 MySQL 5.5 或更高版本中运行。我们使用的是 8.0.12 版本:mysql> select version(); +-----------+ | version() | +-----------+ | 8.0.12 | +-----------+ 1 row in set (0.00 sec)语法如下:SELECT FORMAT(yourColumnName, valueAfterDecimalPoint, 'de_DE') AS anyAliasNamefrom yourTableName;为了理解以上语法,让我们创建一个表。创建表的查询如下:mysql> create table formatNumberDemo -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> Number DECIMAL(19, 1) ... 阅读更多
6K+ 次浏览
要将 MySQL 中以分钟为单位的 INT 数字转换为 TIME 类型,您可以使用 SEC_TO_TIME() 函数。语法如下:select SEC_TO_TIME(yourIntColumnName*60) AS `anyAliasName` from yourTableName;为了理解以上语法,让我们创建一个表。创建表的查询如下:mysql> create table convertNumberToMinute -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> NumberToMinute int -> ); 查询成功,0 行受影响 (0.79 秒)使用 insert 命令在表中插入一些记录。查询如下:mysql> insert into convertNumberToMinute(NumberToMinute) values(60); 查询成功,1 行受影响 (0.12 秒) mysql> insert into convertNumberToMinute(NumberToMinute) values(70); 查询 ... 阅读更多
643 次浏览
您可以使用 COALESCE() 函数将 MySQL 的空值转换为 0SELECT COALESCE(yourColumnName, 0) AS anyAliasName FROM yourTableName;让我们先创建一个表。创建表的查询如下mysql> create table convertNullToZeroDemo -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> Name varchar(20), -> Salary int -> ); Query OK, 0 rows affected (1.28 sec)使用 insert 命令在表中插入一些记录。查询如下mysql> insert into convertNullToZeroDemo(Name, Salary) values('John', NULL); Query OK, 1 row affected (0.20 sec) mysql> insert into convertNullToZeroDemo(Name, Salary) values('Carol', 5610); Query OK, 1 ... 阅读更多