当前位置: 首页 > 面试题库 >

如何使用SELECT WHERE IN()保持顺序?

微生昌胤
2023-03-14
问题内容

使用SELECT WHERE IN()时,是否可以保持顺序?例如,使用以下查询:

SELECT id FROM data_table WHERE id IN(56,55,54,1,7);

结果将使用ID的默认顺序返回。1,7,54,55,56

当我想保留IN中使用的顺序时:56,55,54,1,7

有没有一种快速的方法可以在MySQL中执行此操作,或者我将被迫在代码后对其进行排序


问题答案:

使用FIND_IN_SET:

ORDER BY FIND_IN_SET(id, '56,55,54,1,7')


 类似资料:
  • 问题内容: 以下SQL查询: 返回: 要添加一次,只需添加一次即可: 但是,结果值改变了顺序: 可能是什么原因呢? 我如何保留订单? 问题答案: 该关键字是做什么它应该做的事情,回报每一个行与给定的列值。不同不允许您指定 哪些 这样的行会被退回,这是从原来的查询,这样的排序是允许清楚(存在一个跟随ID为429的行ID为443行)。 要控制将返回哪些行,您需要重新构造查询。我将采用的典型解决方案是使

  • 问题内容: 我想将一个键,值对添加到哈希表(或任何其他集合)中,但必须保持插入顺序。我怎样才能做到这一点? 就像我将1作为键“ 1”添加为值,将2作为键并将“ 2”添加为值。 输出应为: 问题答案: 以下是一些重要实现的特征差异: :“具有可预测的迭代顺序,通常是将键插入映射 的顺序 ( 插入顺序 )。” :“不保证地图的顺序” :“根据其键的自然顺序或按” 即是一个 因此,在这种情况下,您需要的

  • 问题内容: 我创建一个从如下: 我想保持与中相同的迭代顺序。如何使用该方法创建一个? 问题答案: 在2个参数的版本采用的是: 要使用4参数版本,您可以替换: 与: 为了使它更简洁,请编写一个新方法并使用该方法:

  • 我有一些python代码来读取文件并将数据推送到列表中。然后把这个列表放到队列中,用线程处理这个列表,比如说一次20个项目。处理后,我将结果保存到一个新文件中。新文件中的内容实际上与原始文件的顺序不同。例如,我有输入, 但是输出看起来像: 有没有办法保持原来的秩序?这是我的代码:

  • 问题内容: 例如,我的csv具有以下列: 我需要以相同的顺序写回列。该立即搅乱秩序,所以我相信它更与读者的问题。 问题答案: Python的不会在3.6之前保持顺序(但是,无论该版本如何,该类都被修改为返回s)。 然而,实例您使用(你读过的第一行后- !) 确实 有一个字符串列表,其中 IS 秩序。 所以, 会告诉你的是,为了确实维护(中当然, 千万不要 在-这是在Python本质上是不可能的-

  • 问题内容: 我有一个哈希表。values()方法以与插入顺序不同的顺序返回值。如何获得与插入顺序相同的值?使用LinkedHashmap是一种替代方法,但不同步。 问题答案: 使用。 接口的哈希表和链表的实现,具有可预测的迭代顺序。此实现的不同之处在于,它维护一个遍历其所有条目的双向链接列表。此链表定义了迭代顺序,通常是将键插入映射中 的顺序 ( insert-order )。请注意,如果将密钥