Found 4219 Articles for MySQLi

How can I see global locks in MySQL (innodb)?

Chandu yadav
Updated on 30-Jul-2019 22:30:24

424 Views

In order to see the global locks in MySQL (Innodb), use the SHOW command. The below query shows the global locks as well owner of locks and waiters. The following query will also show transaction id and more related to Innodb.The query is as follows:mysql> SHOW ENGINE INNODB STATUS\GThe following is the output:*************************** 1. row *************************** Type: InnoDB Name: Status: ===================================== 2019-01-23 14:46:58 0x2914 INNODB MONITOR OUTPUT ===================================== Per second averages calculated from the last 23 seconds ----------------- BACKGROUND THREAD ----------------- srv_master_thread loops: 87 srv_active, 0 srv_shutdown, 51953 srv_idle srv_master_thread log flush and writes: 0 ---------- SEMAPHORES ---------- OS WAIT ... Read More

Conditional select between dates in MySQL for maximum and minimum values of price set in a table?

Ankith Reddy
Updated on 30-Jul-2019 22:30:24

514 Views

You need to use CASE statement to conditional select between dates to find the minimum and maximum price. Wrap up the CASE statement with aggregate function MIN() and MAX(). The syntax is as follows:SELECT MIN(CASE WHEN CURDATE() BETWEEN yourStartDateColumnName AND yourEndDateColumnName THEN yourLowPriceColumnName ELSE yourHighPriceColumnName END) AS anyVariableName, MAX(CASE WHEN CURDATE() BETWEEN yourStartDateColumnName AND yourEndDateColumnName THEN yourLowPriceColumnName ELSE yourHighPriceColumnName END) AS anyVariableName FROM yourTableName;To understand the above syntax, let us create a table. The query to create a table is as follows:mysql> create table ConditionalSelect    -> (    -> Id int NOT NULL AUTO_INCREMENT,    -> StartDate datetime, ... Read More

How to multiple insert or batch insert at a time in MySQL query?

George John
Updated on 30-Jul-2019 22:30:24

412 Views

You need to use VALUES() with comma separation for multiple insert or batch insert at a time. Use the following syntax that does not produce an invalid MySQL query on insert. The syntax is as follows:INSERT INTO yourTableName VALUES(yourValue1), (yourValue1), (yourValue2), (yourValue3), (yourValue4), (yourValue5), .......N;To understand the above syntax, let us create a table. The query to create a table is as follows:mysql> create table addMultipleValues    -> (    -> Counter int NOT NULL    -> ); Query OK, 0 rows affected (0.60 sec)Now you can insert batch records in the table using VALUES() with comma separation. The query ... Read More

How to deal with 'Boolean' values in PHP & MySQL?

Arjun Thakur
Updated on 30-Jul-2019 22:30:24

3K+ Views

We are using MySQL version 8.0.12. Let us first check the MySQL version:mysql> select version(); +-----------+ | version() | +-----------+ | 8.0.12    | +-----------+ 1 row in set (0.00 sec)To deal with Boolean in MySQL, you can use BOOL or BOOLEAN or TINYINT(1). If you use BOOL or BOOLEAN, then MySQL internally converts it into TINYINT(1).In BOOL or BOOLEAN data type, if you use true literal then MySQL represents it as 1 and false literal as 0 like in PHP/ C/ C++ language.To proof that MySQL convert the BOOL or BOOLEAN to TINYINT(1), let us create a table with ... Read More

System variables vs Local Variables in MySQL?

Chandu yadav
Updated on 30-Jun-2020 12:16:18

345 Views

The local variable has the scope for only a set of statements or block of statement. Whenever a set of statements or block of statement has completed then local variable goes out of scope.For ExampleLocal variable can be used in stored procedure, function etc. It is used with the DECLARE keyword.The syntax is as follows to local variables.DECLARE yourVariableName dataType;The global variables or system variables has the scope across connections until server restart. It is set using GLOBAL keyword. The syntax is as follows −SET GLOBAL max_connections=value; OR SET @@global.max_connections=value;If you know port number then you can use system variable ... Read More

System variables vs User-defined variables in MySQL?

Ankith Reddy
Updated on 30-Jul-2019 22:30:24

347 Views

System VariablesThe system variables are tightly typed variable. These are also known as global specific variable.The system variable can be initialized somewhere in global and contains the value of system variables until the server restarts. This value will destroy whenever you restart the MySQL server. The predefined system variable is prefixed with symbol @@.User-defined VariableThe user defined variable is also known as session-specific variable. It is a type of loosely typed variable which can be initialized somewhere in session and contains the value of user defined variable until session ends. The user defined variable is prefixed with symbol @.For Example:@anyVariableNameRead More

User-defined variables vs Local Variables in MySQL?

George John
Updated on 30-Jul-2019 22:30:24

1K+ Views

The user defined variable is also known as session-specific variable. It is a type of loosely typed variable which can be initialized somewhere in session and contains the value of user defined variable until session ends.The user defined variable is prefixed with symbol @. For Example:@anyVariableName;There are two approaches by which you can initialize the user-defined variable. You can use SET command or using SELECT query. The first approach is as follows:SET @anyVariableName=anyValue;The second approach is as follows:SELECT @anyVariableName :=anyValue;If you do not use colon (:) in SELECT query then it evaluates it as expression. The result will either be ... Read More

Remove seconds from time field in MySQL?

Arjun Thakur
Updated on 30-Jul-2019 22:30:24

2K+ Views

You need to use TIME_FORMAT() to remove seconds from time field. The syntax is as follows:SELECT TIME_FORMAT(yourColumnName1, "%H:%i") AS anyVariableName, TIME_FORMAT(yourColumnName2, "%H:%i") AS anyVariableName FROM yourTableName;To understand the above syntax, let us create a table. The query to create a table is as follows:mysql> create table removeSecondsFromTime    -> (    -> Id int NOT NULL AUTO_INCREMENT,    -> StartTime time,    -> EndTime time,    -> PRIMARY KEY(Id)    -> ); Query OK, 0 rows affected (0.71 sec)Insert some records in the table using insert command. The query is as follows:mysql> insert into removeSecondsFromTime(StartTime, EndTime) values('10:20:45', '11:21:40'); Query OK, ... Read More

Why MySQL NOT NULL shouldn’t be added to primary key field?

Chandu yadav
Updated on 30-Jul-2019 22:30:24

652 Views

You do not need to add NOT NULL to primary key field because it gets NOT NULL automatically. Primary key is combination of both NOT NULL and Unique Key.Here is the demo of primary key field. Let us first create a table. The query to create a table is as follows:mysql> create table NotNullAddDemo    -> (    -> Id int AUTO_INCREMENT,    -> PRIMARY KEY(Id)    -> ); Query OK, 0 rows affected (0.81 sec)In the above table, you do not need to add NOT NULL to primary key field because MySQL internally converts it into NOT NULL. To ... Read More

MySQL - Changing year of dates from 2020 to 2011?

Ankith Reddy
Updated on 30-Jul-2019 22:30:24

309 Views

You can change year of dates from 2020 to 2011 using SUBDATE() with INTERVAL of 9 year because there is a difference of 9 years between 2020 to 2011.The syntax is as follows:UPDATE yourTableName SET yourDateColumnName=SUBDATE(yourDateColumnName, INTERVAL 9 YEAR);To understand the above syntax, let us create a table. The query to create a table is as follows:mysql> create table ChangeYearFrom2020To2011    -> (    -> Id int NOT NULL AUTO_INCREMENT,    -> ExpiryDate date,    -> PRIMARY KEY(Id)    -> ); Query OK, 0 rows affected (0.67 sec)Insert some records in the table using insert command. The query to insert ... Read More

Advertisements