MySQL Oracle默认排序_PostgreSQL、MySQL、Oracle,查询的默认排序是怎样的?
MySQL建库和建表时都可以用COLLATE关键词指定排序规则.
比如WordPress:
数据库:
CREATE DATABASE IF NOT EXISTS `wordpress`
DEFAULT CHARACTER SET utf8
COLLATE utf8_general_ci;
评论表:
CREATE TABLE IF NOT EXISTS `wp_comments` (
`comment_ID` bigint(20) unsigned NOT NULL,
`comment_post_ID` bigint(20) unsigned NOT NULL DEFAULT '0',
`comment_author` text COLLATE utf8mb4_unicode_ci NOT NULL,
`comment_author_email` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
`comment_author_url` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
`comment_author_IP` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
`comment_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`comment_date_gmt` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`comment_content` mediumtext COLLATE utf8mb4_unicode_ci NOT NULL,
`comment_karma` int(11) NOT NULL DEFAULT '0',
`comment_approved` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '1',
`comment_agent` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
`comment_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
`comment_parent` bigint(20) unsigned NOT NULL DEFAULT '0',
`user_id` bigint(20) unsigned NOT NULL DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
MySQL中排序规则utf8_general_ci不区分大小写,ci为case insensitive的缩写,即大小写不敏感.
比如,主键内容为A,插入a将是不允许的,而查找a是可以查到A的.也就是说,A和a在字符判断中被当做一样来处理.
排序规则根据特定语言和区域设置的标准指定对字符串数据进行排序和比较的规则.
排序规则的概念,以PHP的intl扩展举例:
header('Content-Type: text/html; charset=utf-8');
$arr = array('中国','华山','华夏','中华','重阳','重量','b','a',2,1);
collator_sort(collator_create('zh_CN'), $arr);
var_export($arr);
//输出(可见汉字按照拼音排序,但不能识别多音字"重"):
array (
0 => 'a',
1 => 'b',
2 => '华山',
3 => '华夏',
4 => '中国',
5 => '中华',
6 => '重量',
7 => '重阳',
8 => 1,
9 => 2,
)
MySQL Oracle默认排序_PostgreSQL、MySQL、Oracle,查询的默认排序是怎样的?相关推荐
- oracle伪列查询第一行,用ORACLE 中伪列rownum对查询结果进行排序
rownum含义解释: 1.rownum是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2, 依此类推,这个伪字段可以用于限制查询返回的总行数. 2.rownum不能 ...
- oracle与mysql执行sql原理_PostgreSQL、Oracle/MySQL和SQL Server的MVCC实现原理方式
PostgreSQL.Oracle/MySQL和SQL Server的MVCC实现原理方式 关系数据库管理系统使用MVCC(Multiversion Concurrency Control多版本并发控 ...
- 实现List按与一个字符串的相似度和字母顺序排序(适用于模糊查询后的排序)...
因公司业务需要,自己写了一个,保存起来以后可能还会用到.如果还有更好的方法或者算法,希望大家提出来. 1.简单的相似度算法(自己想到的) 因为List中每个String都会包含一个标准的字符 ...
- mysql date 默认值_通过Oracle DB了解MySQL
Oracle数据库是业界的翘楚,各行各业拥有大量的Oracle DB的DBA,本文尝试通过将Oracle与MySQL数据库的架构.安全.模式对象.数据类型及数据存储进行对比,以方便熟悉Oracle数据 ...
- 数据库中自定义排序规则,Mysql中自定义字段排序规则,Oracle中自定义字段排序规则,decode函数的用法,field函数的用法
数据库中自定义排序 场景:有一张banner表,表中有一个status字段,有0, 1, 2三个状态位,我想要 1,0,2的自定义排序(这里是重点),然后再进行之上对sequence字段进行二次排序( ...
- 数据库-Oracle【Oracle数据库设置默认表空间问题及Oracle,SQL,MySQL的自增变量设置】...
一. Oracle数据库设置默认表空间问题 DBA们经常会遇到一个这样令人头疼的问题:不知道谁在Oracle上创建了一个用户,创建时,没有给这个用户指定默认表空间,所以这个用户就会采用默认的表空间-- ...
- oracle mysql 28545,64位Linux系统Oracle 10g异构MySQL查询搭建过程
四. 配置Oracle服务器的/etc/odbc.ini文件,测试ODBC工作 (1)vi /etc/odbc.ini,填入如下内容: [MySQLora] Description = MySQL ...
- mysql start with connect by_MYSQL实现Oracle的Start with…Connect By递归树查询
最近接触一个老项目,最初适配的数据库是oracle 后来迁移到mysql .这个迁移是由一个已经离职的新手做的.这个新手对于很多oracle特有的函数及存储过程都没有进行迁移.导致系统很多功能都BUG ...
- oracle查询的默认排序,oracle 默认排序及认知
Oracle对无orderby的语句返回的结果不进行排序,oracle此时的处理方式是按照数据的物理存储顺序来读取数据.因为rowid是每行数据的地址,所以有时候看起来会像是使用rowid排序的.但这 ...
- oracle查询排名第二,2020年2月数据库排名:第一是Oracle,第二是MySQL,SQLite进前十名...
DB-Engines根据用户对数据库的热度进行了2020年2月数据库排名,结果显示:第一的是Oracle,第二是MySQL,第三是Microsoft SQL Server,数据库黑马SQLite进入到 ...
最新文章
- vue transition动画
- hdu2833 Floyd + dp
- 计划策略-40-最终装配计划
- html弧形列表效果,web前端入门到实战:html5网页特效-弧形菜单
- 【Qt】modbus之串口模式写操作
- js 确定主窗体是否存在
- 受疫情影响 MWC 2020正式取消
- python中执行shell脚本之subprocess模块_如何使用Python中的subprocess模块检查shell脚本的状态?...
- 《统计学习方法》——感知机
- 博弈论中的简单合作博弈 C#实现
- 计算机课题推荐人意见,课题推荐人意见
- todd的hadoop world的ppt笔记
- notepad拼心形_Excel心形函数v1.0 免费版
- 百度搜索框搜索时显示或者隐藏历史搜索记录
- 三角形的缩放动画,不会做的看过来!
- word题注编号格式从仅数字顺序编号到包含章节号编号
- java中driver是什么意思_java.sql.SQLException: com.sqljdbc.Driver什么意思啊?
- LUNA 黑天鹅事件:Terra CEO关于项目应急方案的社区AMA
- ASP实现网站智能分词搜索
- 手把手教你读财报----银行业---第十五课