【Mysql->order by SQL 根据多个条件排序】教程文章相关的互联网学习教程文章

php-MySQL INNER JOIN先通过多个匹配进行排序【代码】

我有下表gifts - a list of products tags - a list of tags that can be applied to products tags_gifts - a join for gifts and tags if they are applicable这是两个标签示例(id,name):508 - jewellery 7 - gold我有以下SQL结果:SELECT * FROM gifts LEFT JOIN tags_gifts ON tags_gifts.gift_id = gifts.gift_id INNER JOIN tags ON tags.id = tags_gifts.tag_id WHERE published = '1' AND ( (tags_gifts.tag_id = '508...

php-MySQL排序结果按最接近给定数字的顺序【代码】

我正在努力查询以选择最接近数字的结果.这是用于网站www.soulmate.dating 本质上,我有一个查询,其中包含每个成员的GEO位置(除其他数据外),并且我希望结果按最接近所选GEO位置的结果排序. 这是查询:select distance from users;注意:$this-> locationGEO由用户设置(他们可以选择一个地点),可能是41546 当结果返回时,如果我只是按距离排序,则它不是$this-> locationGEO中值的封闭数字-例如:41546. 如何运行查询以返回接近数字的结...

mysql高级查询排序【代码】

我在MySQL中有一个这样的表:+-----+------+ | id | type | +-----+------+ | 149 | 8 | | 150 | 7 | | 151 | 8 | | 152 | 7 | | 153 | 5 | | 154 | 6 | | 155 | 3 | | 156 | 2 | | 157 | 4 | | 158 | 2 | | 159 | 1 | | 160 | 0 | +-----+------+我想对该表进行排序并接收如下结果:+-----+------+ | id | type | +-----+------+ | 151 | 8 | | 152 | 7 | | 154 | 6 | | 153 | ...

php-MYSQL按喜欢/不喜欢和受欢迎程度排序【代码】

我有包含喜欢和不喜欢的评论表,现在我的顺序有问题. 实际上,我的系统在顶部显示的评论数最多. 我正在寻找YouTube中的系统. 这意味着具有100like / 100dislikes的注释的顺序高于1/1. 我希望这是可以理解的:)解决方法:这是经典的问题,如何对upvote / downvote,正/负,喜欢/不喜欢等进行排名.有几种可能的解决方案,但在特定条件下可能会给出错误的结果. 我强烈建议您阅读和使用订购方式(如How Not To Sort By Average Rating)PROBLEM: ...

mysql-如何将包含带有linq lambdas的数值的varchar列排序到Entity【代码】

我正在使用linq lambdas在MVC中使用实体框架查询MySql(注意,MySql不是Sql).现在我有一个表产品,该表的其中一列是价格,数据类型为“ VARCHAR”(接受,我无法将类型更改为INT,因为它可以容纳“ N / A”等值). 我想使用linq Lambdas对价格列进行数字排序.我尝试了下面的方法.我正在使用模型值来过滤查询.var query = ent.Product.Where(b => b.cp == Model.CodePostal);if (Model.order_by_flg == 2) {query = query.OrderByDescending...

mysql-排序事务:ER_LOCK_WAIT_TIMEOUT【代码】

我在使用mysql(5.6.17)进行事务续集时遇到问题,我有一个插入语句和两个更新应该全部完成或不执行,但是最终交易.create似乎回滚了,但是driver.update执行了,但没有执行回滚和第三次更新,即trip.update语句,没有任何更改或回滚,控制台挂起,几秒钟后抛出此错误:Executing (42a68c8e-8347-45af-b9a2-7b0e7a89606b): START TRANSACTION; Executing (42a68c8e-8347-45af-b9a2-7b0e7a89606b): SET SESSION TRANSACTION ISOLATION LEVEL R...

mysql-在同一列上按多种情况对行进行排序【代码】

我有这个结构| start_at ---------------------- record1 | 2016-01-20 record2 | 2016-01-15 record3 | 2016-01-22 record4 | 2016-01-10 可以说当前日期是2016年1月19日 我想首先获取具有大于当前日期的start_at的记录,并按start_at ASC对其进行排序. 然后,我想获取具有start_at小于当前日期的记录,并按start_at DESC对其进行排序. 所以结果应该是这样的:| start_at ---------------------- record1 | 2016-01-20 r...

mysql-哪个SQL排序规则用于é等特殊字符?【代码】

这个问题已经在这里有了答案: > Trouble with UTF-8 characters; what I see is not what I stored 4个知道我使用SQL查询调用内容时,如何使特殊字符出现在PHP页面中.例如对于所有其他特殊字符都以 表示. 我正在使用MySQL服务器. db排序规则设置为utf8_unicode_ci,但是表的某些属性设置为latin1_swedish_ci解决方法: ALTER DATABASE databasename CHARACTER SET utf8 CO...

如何在MySQL右联接中对结果排序?【代码】

我试图使用MySQL数据库获取全年的每月数据.我有两张桌子 >贷款>月 贷款` +--------+--------+-------+----------+ | idloan | amount | tot | interest | +--------+--------+-------+----------+ | 3 | 10000 | 15000 | 50 | | 4 | 5000 | 6000 | 10 | | 5 | 20000 | 30000 | 10 | | 6 | 30000 | 3000 | 10 | | 7 | 15000 | 16500 | 10 | +--------+--------+-...

php-MySql按大小写排序【代码】

我想知道是否有更有效的方式编写案例循环.$search = "ORDER BY CASE WHEN created_by = :created_by THEN -1 WHEN cat_id = 24 THEN -1 WHEN cat_id = 26 THEN -1 ELSE created_at END LIMIT :limit, :perpage";我怀疑是否WHEN cat_id = 24 THEN -1 WHEN cat_id = 26 THEN -1 可能WHEN cat_id = IN(24,26) THEN -1如果没有,我该怎么办?我是否必须进行某种for循环?解决方法:如果...

mysql-按desc排序【代码】

这是带有结果的查询:SELECT id, name FROM medic WHERE x=z ORDER BY name ASC1. Aric 2. Bodi 3. Copi 4. Dori 5. Edo 6. Other 7. Poyo 8. Quex 9. Razix 10. Zika如果最后需要在下面显示“其他”,那该怎么办:1. Aric 2. Bodi 3. Copi 4. Dori 5. Edo 7. Poyo 8. Quex 9. Razix 10. Zika 6. Other解决方法:在MySQL中,您可以只使用布尔表达式:ORDER BY (name <> 'Other') DESC,nameMySQL在数字上下文中将布尔表达式视为数字,其...

MySQL 数字字符串按照数字排序【代码】

一个关于MySQL字符串排序,在数据里面定义的是varchar类型,实际存放的是Int类型的数据,按一下查询语句进行排序: 将字段*1或者+0可以将MySQL字符串字段按数值排序 如: 1 select * from table where 1 order by id*1 desc; 或者 1 select * from table where 1 order by id+0 desc;除了上述方法外,这里附上一种排序方法,利用find_in_set()进行无敌排序参考链接:https://blog.csdn.net/weixin_40607363/article/details/81776951

在php while循环中对输出mysqli数据进行排序【代码】

我想显示两个(后来)表中的最后10行.目前,我只能按正确的方式排序(使用2个表的atm).每个表都有uuid作为对用户的引用. 表格1:+-----------+-------------+------+-----+-------------------+-----------------------------+ | Field | Type | Null | Key | Default | Extra | +-----------+-------------+------+-----+-------------------+-----------------------------+ | id ...

mysql-SQL,排序依据-如何赋予其他列更多权限?【代码】

我有以下SQL语句:SELECT * FROM converts WHERE email='myemail@googlemail.com' AND status!='1' ORDER BY date ASC, priority DESC这只是按日期排序,但是我想给我的“优先级”列更多权限.我怎样才能做到这一点? 它应该首先按日期排序,但是如果两个记录之间的时间是10分钟,那么我想优先处理.如何在我的SQL语句中执行此操作,或者必须在应用程序逻辑中执行此操作?我希望可以在我的SQL语句中做到这一点. 谢谢大家的帮助解决方法...

MySQL按名称排序【代码】

可能无法按字母顺序对列进行排序,但忽略了某些单词,例如“ The” 例如 普通查询将返回string 1 string 3 string 4 the string 2我想回来string 1 the string 2 string 3 string 4这可能吗? 编辑请注意,我正在寻找替换多个单词,例如The,A等.可以这样做吗?解决方法:你可以试试SELECT id, text FROM table ORDER BY TRIM(REPLACE(LOWER(text), 'the ', ''))但请注意,对于大型数据集,这将非常慢,因为它必须为每一行重新计算新的字符串...