按照in列表的顺序查询
select id, mch_id, name, pic, original_price, price, sale
from pms_product
where
company_id = #{companyId} and delete_status = 0 and publish_status = 1
and id in(1,5,6,7,3)
order by field(id,1,5,6,7,3)
根据经纬度计算直线距离
已知用户经纬度(116.3424590000, 40.0497810000),计算与目标店铺经纬度的直线距离。
-- 查询每个店铺的距离
SELECT
ROUND(
6378.137 * 2 * ASIN(
SQRT(
POW( SIN( ( 40.0497810000 * PI() / 180 - latitude * PI() / 180 ) / 2 ), 2 ) +
COS( 40.0497810000 * PI() / 180 ) * COS( latitude * PI() / 180 )
* POW( SIN( ( 116.3424590000 * PI() / 180 - longitude * PI() / 180 ) / 2 ), 2 )
)
) * 1000
) distance
FROM mall_store_info msi
ORDER BY distance
截取时间段并转化为分钟
时间格式:小时:分钟(00:00,03:30,06:50)
-- 从要截取的下标位置往后截两位,小时位置截取之后需要 * 60,再加上分钟,就是总的分钟数
SELECT
SUBSTRING( business_start_time, 1, 2 ) * 60 + SUBSTRING( business_start_time, 4, 2 ) start_time1,
SUBSTRING( business_start_time, 7, 2 ) * 60 + SUBSTRING( business_start_time, 10, 2 ) start_time2,
SUBSTRING( business_start_time, 13, 2 ) * 60 + SUBSTRING( business_start_time, 16, 2 ) start_time3,
SUBSTRING( business_end_time, 1, 2 ) * 60 + SUBSTRING( business_end_time, 4, 2 ) end_time1,
SUBSTRING( business_end_time, 7, 2 ) * 60 + SUBSTRING( business_end_time, 10, 2 ) end_time2,
SUBSTRING( business_end_time, 13, 2 ) * 60 + SUBSTRING( business_end_time, 16, 2 ) end_time3
FROM mall_store_info
查询某个数据库中某个表的所有列名
使用时只需要替换 db_name( 数据库名 )和 tb_name ( 表名 )即可
SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'db_name' AND TABLE_NAME = 'tb_name';
查询某个数据库中某个表的所有列名,并用逗号连接
使用时只需要替换 db_name( 数据库名 )和 tb_name ( 表名 )即可
SELECT GROUP_CONCAT(COLUMN_NAME SEPARATOR ",") FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'db_name' AND TABLE_NAME = 'tb_name';
MySQL CONCAT 长度限制
转载:https://blog.csdn.net/weixin_36488250/article/details/113168929
修改 group_concat_max_len 大小
修改group_concat_max_len大小有两种方法:
1、临时修改
SET GLOBAL group_concat_max_len=102400;
设置为 -1 则表示最大值。使用 SET 进行设置后客户端重新连接即可,缺点是 MySQL 服务器重启后会恢复为默认设置值。
2、永久修改
修改 MySQL 配置文件 my.ini
,默认情况下是没有 group_concat_max_len 项的,在配置文件中添加
group_concat_max_len = -1
重启 MySQL 服务器即可