【MySQL 对类似 IP字段排序问题】教程文章相关的互联网学习教程文章

MYSQL数据库字母数字混合字段排序问题

对MySQL数据表里的一个字符型字段排序,其内容格式为一位字母+顺序数字。数字没有前导零,长度不固定。这种含字母的数字序列,排序出来的结果和我们想要的结果是不一样的,因为它不是纯数字,只能按字符规则排。结果是A1,A10,A11,A12。。。。A19,A2,A20,A21。。。。而不是我们通常感觉中的A1,A2,A3,。。。。。A10,A11,这样的结果。想要得到正确的排序有两个办法。一是改变字段内容结构,在数字前加上零,让所有的字段值...

MySQL自定义查询字段排序【代码】【图】

同事在做抽奖排名的时候有个问题 需要按照一等奖二等奖三等奖未中奖的形式输出数据问到我如何排序。数据库设计如下 用一个prize_code字段标示了是否中奖 1是一等奖 2是二等奖 3是三等奖 0是未中奖思考许久 本来开始想用union 写出SQL如下select*from (SELECT*FROM data where prize_code>0orderby prize_code asc) as tmp UNIONselect*from data where prize_code=0;查询结果如下:然后同事觉得太复杂 不好理解 ,后来我说提供用分...

关于MySQL一些问题按字段排序

之前从数据库取值然后按照某个字段进行排序,返回的却是乱序的,这是什么原因呢? 比如,数据表a有一个字段APPversion是varchar型的(7、8、9、10),然后我们在工程中定义APPVersion为String型的,我们按照这个APPversion来反向排序,如果直接使用select * from a order by APPversion desc;这样查询出来的是9、8、7、10。主要原始还是数据库定义的是varchar型的,是按照字符串来排序的,所以这里的10并不是10,而是1 0。这里我们...

MySQL中按照多字段排序及问题解决_MySQL

因为在做一个项目需要筛选掉一部分产品列表中的产品,使其在列表显示时排在最后,但是所有产品都要按照更新时间排序。 研究了一下系统的数据库结构后,决定将要排除到后面的产品加为粗体,这样在数据库中的“ifbold”就会被标记为1,而其他产品就默认标记为0,然后就打算使用MySQL在Order By时进行多字段排序。 Order by的多条件分割一般使用英文逗号分割,所以我测试的SQL如下:代码如下: select * from {P}_product_con where $s...

PHP中使用MySQL按照多字段排序及问题解决_PHP教程

因为在做一个项目需要筛选掉一部分产品列表中的产品,使其在列表显示时排在最后,但是所有产品都要按照更新时间排序。 研究了一下系统的数据库结构后,决定将要排除到后面的产品加为粗体,这样在数据库中的“ifbold”就会被标记为1,而其他产品就默认标记为0,然后就打算使用MySQL在Order By时进行多字段排序。 Orderby的多条件分割一般使用英文逗号分割,所以我测试的SQL如下: select * from {P}_product_con where $scl order b...

mysql字符串类型的字段排序问题

我有一个字段A,varchar类型。里面有3条数据,经过order by A DESC排序之后,顺序如下2013.03、2013.02、2013.04 请问如何做到时间最新的排在前面?在不修改数据表字段类型的前提下。 回复讨论(解决方案) 假设你这个2013.03的字段是 shijian order by A DESC,shijian desc order by 可以多个字段的 假设你这个2013.03的字段是 shijian order by A DESC,shijian desc order by 可以多个字段的 关键是2013....

请教个mysql问题.关于获取查询结果中某一个字段的最大值(按照其他字段排序)

每次求助这样的问题都蛮不好意思的... 不过经常来不及去查手册找办法... 只好再伸下手... 问题是这样的. 进行一个常规的查询,按字段a进行倒序排列. 但是又想获得这次查询中字段b的最大值 php好像没有提供直接获取多维数组最大键值的函数.. 要自己写排序也不是不可以 但是还是想问下 在mysql这边能否直接查出来(并且不能有太多的性能损失 否则不如去用php计算了) 谢谢 回复讨论(解决方案) mysql 提供有 max ...

mysql字段排序,该如何处理

mysql 字段排序在一个sql语句中如果如果需要排序的字段是空的,怎样处理啊,如果想把它排在后面怎么弄啊?------解决方案--------------------如果要排序的字段是空,默认会把为空的排在前面。加一个DESC关键词就可倒序排列,也就是空的在最后面 ------解决方案--------------------建议你贴出:create table.......insert into table.......以及期望结果。 ------解决方案--------------------ORDER by isnull(`要按值排序的字段`)...

请问个mysql有关问题.关于获取查询结果中某一个字段的最大值.(按照其他字段排序)

请教个mysql问题.关于获取查询结果中某一个字段的最大值..(按照其他字段排序)本帖最后由 anyilaoliu 于 2013-05-21 16:21:32 编辑每次求助这样的问题都蛮不好意思的... 不过经常来不及去查手册找办法... 只好再伸下手...问题是这样的. 进行一个常规的查询,按字段a进行倒序排列. 但是又想获得这次查询中字段b的最大值php好像没有提供直接获取多维数组最大键值的函数.. 要自己写排序也不是不可以 但是还是想问下 在mysql这边能否直...

mysql字符串类型的字段排序有关问题

mysql字符串类型的字段排序问题我有一个字段A,varchar类型。里面有3条数据,经过order by A DESC排序之后,顺序如下2013.03、2013.02、2013.04 请问如何做到时间最新的排在前面?在不修改数据表字段类型的前提下。分享到:------解决方案--------------------假设你这个2013.03的字段是 shijian order by A DESC,shijian descorder by 可以多个字段的

mysql比较难的一个字段排序的问题

某个字段的结果是json格式比如["12312","我是我",0]我希望按照12312这个值来进行排序,请问能实现么?回复内容:某个字段的结果是json格式比如["12312","我是我",0]我希望按照12312这个值来进行排序,请问能实现么?如果你的应用比较简单,数据量也不大,我的建议是,把需要排序的字段单拎出来,作为一个索引字段。也就是"12312" | ["12312","我是我",0]如果你觉得,你的应用场景会越来越复杂,或者需要索引的数据量非常大,那么可...

mysql5.6中 order by 多个字段排序问题【图】

今天用order by排序 后面跟了多个字段,如sql语句: SELECT a.id,a.loginname,a.address,u.id,u.`name`,u.address FROM admin_user AS a,users AS u WHERE a.parent_id=u.parent_id ORDER BY a.id ,u.id; 当然,给我的结果却不太满意,我想按照a.id,和u.id进行升序排列,可我太天真了,结果如图:很显然,mysql order by是按照第一个字段进行排序,然后匹配上第二的字段进行排序的mysql5.6中 order by 多个字段排序问题标签:本文...

mysql创建外键出错(注意数据库表字段排序)

1. 两个字段的类型或者大小不严格匹配。例如,如果一个是int(10),那么外键也必须设置成int(10),而不是int(11),也不能是tinyint。另外,你还必须确定两个字段是否一个为 signed,而另一个又是unsigned(即:无符号),这两字段必须严格地一致匹配,更多关于signed和unsigned的信息,请参阅:http://www.verysimple.com/blog/?p=57 2. 试图设置外键的字段没有建立起索引,或者不是一个primary key(主键)。如果其中一个不是prim...

mysql 中文字段排序( 按拼音首字母排序) 的查询语句

如果数据表tbl的某字段name的字符编码是latin1_swedish_ci select * from `tbl` order by birary(name) asc ; 如果数据表tbl的某字段name的字符编码是utf8_general_ci SELECT name FROM `tbl` WHERE 1 ORDER BY CONVERT( name USING gbk ) COLLATE gbk_chinese_ci ASCmysql 中文字段排序( 按拼音首字母排序) 的查询语句标签:本文系统来源:http://www.cnblogs.com/weilantiankong/p/4685374.html

mysql按字段分组并获取每个分组按照某个字段排序的前三条【图】

a.* from data a where 3 > (select count(*) from data where brand_id = a.brand_id and total_num > a.total_num ) order by a.brand_id, a.total_num desc;得到结果 mysql按字段分组并获取每个分组按照某个字段排序的前三条标签:本文系统来源:http://www.cnblogs.com/lizhaoyao/p/5163729.html

字段 - 相关标签