找到 4379 篇文章 适用于 MySQL

如何使用 MySQL 识别所有表中都存在的列?

AmitDiwan
更新于 2019-12-31 07:34:29

112 次浏览

要识别列名,请在 MySQL 中使用 INFORMATION_SCHEMA.COLUMNS。以下是语法:select table_name, column_name from INFORMATION_SCHEMA.COLUMNS where table_schema = SCHEMA() andcolumn_name='anyColumnName';让我们实现上述查询,以识别所有表中都存在的列。在这里,我们查找列 EmployeeAge 的存在情况:mysql> select table_name, column_name    FROM INFORMATION_SCHEMA.COLUMNS    WHERE table_schema = SCHEMA()    AND column_name='EmployeeAge';这将产生以下输出,显示具有特定列“EmployeeAge”的表:+---------------+-------------+ | TABLE_NAME    | COLUMN_NAME | +---------------+-------------+ | demotable1153 | EmployeeAge | | demotable1297 | EmployeeAge | | demotable1303 | EmployeeAge | | demotable1328 ... 阅读更多

从 MySQL 中具有相似学生名称的记录中获取最大年龄

AmitDiwan
更新于 2019-12-31 07:31:31

976 次浏览

为此,您可以使用 GROUP BY 以及聚合函数 MAX()。让我们首先创建一个表:mysql> create table DemoTable1964    (    StudentName varchar(20),    StudentAge int    ); Query OK, 0 rows affected (0.00 sec)使用 insert 命令在表中插入一些记录:mysql> insert into DemoTable1964 values('Chris', 23); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1964 values('David', 34); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1964 values('Chris', 27); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1964 values('Sam', 31); Query OK, 1 row affected (0.00 sec) mysql> ... 阅读更多

MySQL 查询以创建用户并授予权限

AmitDiwan
更新于 2019-12-31 07:29:43

359 次浏览

要创建用户并授予权限,语法如下:create database yourDatabaseName DEFAULT CHARACTER SET utf8; create user `yourUserName` identified by yourPassword; GRANT SELECT ON yourDatabaseName .* TO `yourUserName`; GRANT INSERT ON yourDatabaseName .* TO `yourUserName`; GRANT UPDATE ON yourDatabaseName .* TO `yourUserName`; GRANT DELETE ON yourDatabaseName .* TO  `yourUserName`; GRANT EXECUTE ON yourDatabaseName .* TO `yourUserName`;以下是创建用户并授予权限的查询:mysql> create database demo_app DEFAULT CHARACTER SET utf8; Query OK, 1 row affected, 1 warning (0.00 sec) mysql> create user `John_123` identified by '123456'; Query OK, 0 rows affected (0.00 sec) ... 阅读更多

MySQL 查询将字符串值(带连字符)从一列分离并选择到不同的列

AmitDiwan
更新于 2019-12-31 07:25:49

430 次浏览

为此,您可以使用 SUBSTRING_INDEX()。让我们首先创建一个表:mysql> create table DemoTable1962    (    EmployeeInformation text    ); Query OK, 0 rows affected (0.00 sec)使用 insert 命令在表中插入一些记录:mysql> insert into DemoTable1962 values('101-John-29'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1962 values('102-David-35'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1962 values('103-Chris-28'); Query OK, 1 row affected (0.00 sec)使用 select 语句显示表中的所有记录:mysql> select * from DemoTable1962;这将产生以下输出:+---------------------+ | EmployeeInformation | +---------------------+ | 101-John-29   ... 阅读更多

解析字符串以从用下划线分隔的大字符串中获取数字

AmitDiwan
更新于 2019-12-31 07:22:24

85 次浏览

让我们首先创建一个表:mysql> create table DemoTable1961    (    Title text    ); Query OK, 0 rows affected (0.00 sec)使用 insert 命令在表中插入一些记录:mysql> insert into DemoTable1961 values('You_can_remove_the_string_part_only-10001-But_You_can_not_remove_the_numeric_parts'); Query OK, 1 row affected (0.00 sec)使用 select 语句显示表中的所有记录:mysql> select * from DemoTable1961;这将产生以下输出:+------------------------------------------------------------------------------------+ | Title                                                                     ... 阅读更多

单个 MySQL 查询将多行中的字符串组合到一行中,并在另一列中显示相应的用户 ID 总和?

AmitDiwan
更新于 2019-12-31 07:19:50

296 次浏览

为此,您可以使用 GROUP_CONCAT()。使用 SUM() 添加用户 ID。让我们首先创建一个表:mysql> create table DemoTable1960    (    StudentId int,    StudentName varchar(20)    ); Query OK, 0 rows affected (0.00 sec)使用 insert 命令在表中插入一些记录:mysql> insert into DemoTable1960 values(100, 'Chris'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1960 values(101, 'Bob'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1960 values(102, 'David'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1960 values(103, 'Mike'); Query OK, 1 row affected (0.00 sec)Display ... 阅读更多

在 MySQL 中从当前年份创建动态表名,例如 2019

AmitDiwan
更新于 2019-12-31 07:18:24

956 次浏览

要创建像年份(2019)这样的表名,请使用 PREPARE 语句。让我们首先创建一个表:mysql> create table DemoTable1959    (    UserName varchar(20)    ); Query OK, 0 rows affected (0.00 sec)使用 insert 命令在表中插入一些记录:mysql> insert into DemoTable1959 values('Chris'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1959 values('David'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1959 values('Bob'); Query OK, 1 row affected (0.00 sec)使用 select 语句显示表中的所有记录:mysql> select * from DemoTable1959;这将产生以下输出:+----------+ | UserName ... 阅读更多

在 MySQL 中将自动递增的用户 ID 序列号显示为从 001 开始?

AmitDiwan
更新于 2019-12-31 07:14:27

648 次浏览

为此,请使用 ZEROFILL 并更改表以从相同的序列开始:alter table yourTableName    change yourColumnName yourColumnName int(3) UNSIGNED ZEROFILL NOT NULL AUTO_INCREMENT PRIMARY KEY;为了理解上述语法,让我们首先创建一个表:mysql> create table DemoTable1958    (    UserId int,    UserName varchar(20)    ); Query OK, 0 rows affected (0.00 sec)以下是将生成的序列号更改为从 001 开始的查询:mysql> alter table DemoTable1958    change UserId UserId int(3) UNSIGNED ZEROFILL NOT NULL AUTO_INCREMENT PRIMARY KEY; Query OK, 0 rows affected (0.00 sec) Records: 0  Duplicates: 0  Warnings: 0Let ... 阅读更多

在 MySQL 查询中除以一列以获取员工的月薪?

AmitDiwan
更新于 2019-12-31 07:11:39

330 次浏览

首先创建一个表 -mysql> create table DemoTable1957    (    EmployeeId int,    EmployeeName varchar(20),    EmployeeSalary int    ); Query OK, 0 rows affected (0.00 sec)使用insert命令在表中插入一些记录 -mysql> insert into DemoTable1957 values(1, 'Chris', 240000); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1957 values(2, 'Bob', 120000); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1957 values(3, 'David', 180000); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1957 values(4, 'Mike', 650000); Query OK, 1 row affected (0.00 sec)使用... 阅读更多

在 MySQL 中满足条件时选择列,以从当前日期和当前日期加 1 获取记录

AmitDiwan
更新于 2019-12-31 07:04:51

458 次查看

首先获取当前日期 -mysql> select curdate();这将产生以下输出 -+------------+ | curdate()  | +------------+ | 2019-12-15 | +------------+ 1 row in set (0.00 sec)首先创建一个表 -mysql> create table DemoTable1956    (    ProductId int,    ProductName varchar(20),    CustomerName varchar(20),    ShippingDate date    ); Query OK, 0 rows affected (0.00 sec)使用insert命令在表中插入一些记录 -mysql> insert into DemoTable1956 values(101, 'Product-1', 'Sam', '2019-10-11'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1956 values(102, 'Product-2', 'Carol', '2018-12-01'); Query OK, 1 row affected (0.00 sec) ... 阅读更多

广告