找到 4219 篇文章 关于 MySQLi
192 次浏览
MySQL 中没有 TOP 的概念。编写查询的替代方法是使用 LIMIT,例如要选择 2 条记录,需要使用 TOP 2。让我们看看 MySQL 中的语法:SELECT * FROM yourTableName ORDER BY yourColumnName DESC LIMIT 2;为了理解上述语法,让我们创建一个表。创建表的查询如下:mysql> create table Top2Demo - > ( - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, - > Name varchar(20), - > Age int - > ); Query OK, 0 rows ... 阅读更多
4K+ 次浏览
要获取 server_id,请使用系统定义的变量 @@server_id。不能仅使用单个 @ 作为 server_id 的用户定义变量。语法如下:SELECT @@ server_id作为替代,可以使用 SHOW VARIABLES 命令。语法如下:SHOW VARIABLES LIKE ‘server_id’;案例 1查询如下:mysql> SELECT @@server_id as SERVER_ID;输出如下:+-----------+ | SERVER_ID | +-----------+ | 1 | +-----------+ 1 row in set (0.00 sec)案例 2查询如下:mysql> show variables like 'server_id';输出如下:+---------------+-------+ | Variable_name | Value | +---------------+-------+ | server_id | ... 阅读更多
11K+ 次浏览
要检查值是否存在于逗号分隔列表中,可以使用 FIND_IN_SET() 函数。语法如下:SELECT * FROM yourTablename WHERE FIND_IN_SET(‘yourValue’, yourColumnName) > 0;让我们首先创建一个表。创建表的查询如下:mysql> create table existInCommaSeparatedList - > ( - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, - > Name varchar(200) - > ); Query OK, 0 rows affected (0.68 sec)现在可以使用 insert 命令在表中插入一些记录。查询如下:mysql> insert into existInCommaSeparatedList(Name) values('John, ... 阅读更多
202 次浏览
以下是 MySQL 中 END IF 语句的语法IF yourCondition THEN yourStatement ELSE yourStatement END IF以下是创建存储过程时 END IF 语句的演示mysql> DELIMITER // mysql> CREATE PROCEDURE Sp_Test( IN value INT ) - > BEGIN - > IF value < 10 THEN - > select 'Your value is less than 10'; - > ELSE - > select 'Your value is greater than 10'; - > END IF; ... 阅读更多
4K+ 次浏览
要获取最长的 varchar 长度,需要使用 CHAR_LENGTH()。语法如下:SELECT Max(CHAR_LENGTH(yourColumnName)) AS anyAliasName FROM yourTableName;为了理解上述语法,让我们创建一个表。创建表的查询如下:mysql> create table CharLengthDemo - > ( - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, - > Sentence varchar(255) - > ); Query OK, 0 rows affected (0.60 sec)使用 insert 命令在表中插入一些记录。查询如下:mysql> insert into CharLengthDemo(Sentence) values('Java is an object oriented programming language' - > ); Query OK, 1 row ... 阅读更多
4K+ 次浏览
ON UPDATE CURRENT_TIMESTAMP 定义,如果未显式设置时间戳,则更新将导致更新为当前时间戳值。可以使用 ALTER 命令从列中删除 ON UPDATE CURRENT_TIMESTAMP。语法如下:ALTER TABLE yourTableName CHANGE yourTimeStampColumnName yourTimeStampColumnName timestamp NOT NULL default CURRENT_TIMESTAMP;为了理解上述语法,让我们创建一个表。创建表的查询如下:mysql> create table removeOnUpdateCurrentTimeStampDemo - > ( - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, - > Name varchar(20), - > UserUpdateTimestamp timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP ... 阅读更多
2K+ 次浏览
要获取当前日期前两天的记录,需要使用 DATE_SUB()。我们还将使用 NOW() 获取当前日期。语法如下:SELECT * FROM yourTableName WHERE yourDateTimeColumnName BETWEEN DATE_SUB(DATE(NOW()), INTERVAL 2 DAY) AND DATE_SUB(DATE(NOW()), INTERVAL 1 DAY);让我们看一个例子mysql> create table get2daysAgoDemo - > ( - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, - > Name varchar(20), - > PostDateTime datetime - > ); Query OK, 0 rows affected (1.70 ... 阅读更多
4K+ 次浏览
需要使用 DISTINCT 关键字从表中的 datetime 列中选择不同的日期。例如,让我们创建一个表mysql> create table PostMesssageDemo - > ( - > UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY, - > UserMessage varchar(100), - > UserPost datetime - > ); Query OK, 0 rows affected (0.60 sec)现在可以使用 insert 命令在表中插入一些记录。查询如下:mysql> insert into PostMesssageDemo(UserMessage, UserPost) values('Software Developer', now()); Query OK, 1 row affected (0.17 sec) mysql> insert into PostMesssageDemo(UserMessage, UserPost) values('Software Developer', date_add(now(), interval 3 ... 阅读更多
1K+ 次浏览
以下是 MySQL CASE OR 条件的语法SELECT yourColumnName1, .....N , CASE WHEN yourColumnName2=0 or yourColumnName2IS NULL THEN 'yourMessage1' ELSE 'yourMessage2' END AS yourAliasName FROM yourTableName;为了理解上述语法,让我们创建一个表。创建表的查询如下:mysql> create table ReservationSystems - > ( - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, - > Name varchar(20), - > isSeatConfirmed tinyint - > ); Query OK, 0 rows affected (0.61 sec)使用 insert 命令在表中插入一些记录。查询如下:mysql> insert into ReservationSystems(Name, isSeatConfirmed) ... 阅读更多
47K+ 次浏览
要使用 SQL ORDER BY 子句和 LIMIT 10 从数据库中选择前 10 个元素。语法如下:SELECT * FROM yourTableName ORDER BY yourIdColumnName LIMIT 10;为了理解上述语法,让我们创建一个表。创建表的查询如下:mysql> create table Clients - > ( - > Client_Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, - > ClientName varchar(20) - > ); Query OK, 0 rows affected (0.51 sec)使用 INSERT 命令在表中插入一些记录。查询如下:mysql> insert into Clients(ClientName) values('Larry'); Query OK, 1 row affected (0.09 ... 阅读更多