set @@global.sql_mode='STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
MySQL的查询结果行字段拼接,可以用下面函数实现:
concat函数
如果连接串中存在NULL,则返回结果为NULL:
#上例SQL
select concat(`id`,'_',`level`) as `id_level`, `name` from `district` limit 20;
Emoji表情如图
再获取微信昵称的时候如果遇到类似☀🌅的mysql会保存失败,有两种解决办法:
1.改数据库字段为utf8mb4,因为emoji表情是4个字节 注意,php连接数据库的配置也要改为utf8mb4,如果是tp,设置
'DB_CHARSET' => 'utf8mb4'
laravel改config/database.php
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
2.还可以获取完相对应字段用json_encode编码存入数据库,用的时...
/*
MYSQL的事务处理主要有两种方法。
1、用begin,rollback,commit来实现
begin 开始一个事务
rollback 事务回滚
commit 事务确认
2、直接用set来改变mysql的自动提交模式
MYSQL默认是自动提交的,也就是你提交一个QUERY,它就直接执行!我们可以通过
set autocommit=0 禁止自动提交
set autocommit=1 开启自动提交
来实现事务的处理。
当你用 set autocommit=0 的时候,你以后所有的SQL都将做为事务处理,直到你用commit确认或rollback结束。
注意当你结束这...
使用整数数据的精确数字数据类型。
bigint
从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字)。存储大小为 8 个字节。
int
从 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型数据(所有数字)。存储大小为 4 个字节。int 的 SQL-92 同义字为 integer。
...
select * from tables where id in (2,3,1)
返回的数据是按id 1,2,3排序的,如果你希望返回的按照in给的顺序排序就需要用到order by field了
select * from tables where id in (2,3,1) ORDER BY field(id, 2, 3, 1)
举个例子来说:
有个文章表里面有个type字段,他存储的是文章类型,有 1头条,2推荐,3热点,4图文 .....11,12,13等等
现在有篇文章他既是 头条,又是热点,还是图文,
type中以 1,3,4的格式存储.
们我们如何用sql查找所有type中有4图文标准的文章呢??
这就要我们的find_in_set出马的时候到了.
以下为引用的内容:
select * from article where FIND_IN_SET('4',type)
...