如何使用MySQL表中的行数来选择一些行?

如何使用MySQL表中的行数来选择一些行?,mysql,sql,Mysql,Sql,我有一组行,它实际上是经过筛选和排序的mysql表。 我还有一组整数,比如5,9,12,67,2,3,我想用它们作为行号 问题:使用这些数字从集合中获取行的更好方法是什么 我有一套15行的表格。和数字1,5,7。我怎样才能得到第一、第五和第七排?很抱歉,我刚激动起来,不知道回答的好习惯,所以我将尝试以下方法: 如果你有自动增量索引,用它吗 如果不是,你可以做任意的数字,比如 SELECT @currentRow := @currentRow + 1 AS row_number, * FROM t

我有一组行,它实际上是经过筛选和排序的mysql表。 我还有一组整数,比如5,9,12,67,2,3,我想用它们作为行号

问题:使用这些数字从集合中获取行的更好方法是什么


我有一套15行的表格。和数字1,5,7。我怎样才能得到第一、第五和第七排?很抱歉,我刚激动起来,不知道回答的好习惯,所以我将尝试以下方法:

如果你有自动增量索引,用它吗

如果不是,你可以做任意的数字,比如

SELECT @currentRow := @currentRow + 1 AS row_number, *
FROM table, (SELECT @currentRow:=0) as init 
WHERE row_number IN 1,5,7
哪里出了问题

是的,我弄明白了,但是@epsiloncol似乎做得更快

Triple select可帮助您实现以下目标:

SELECT * FROM
(SELECT *, @currentRow := @currentRow + 1 AS row_number
  FROM table t, (SELECT @currentRow := 0) AS init) AS table
WHERE cdees.row_number IN 1,5,7
尝试使用此代码
从select*中选择*,@rowid:=@rowid+1作为表中的rowid,选择@rowid:=0作为init,其中。。。订购人。。。t其中t.rowid在…一组数字中…

可能会给你提示。。但是你为什么要玩rownumber呢?另外@FahimParkar我有一个疯狂的选择算法,它应该从给定的行集合中获得N条随机行。行号是由特殊的复杂算法生成的,所以我不能使用MySQL。如何获得行集?这仅仅是一个SQL查询,还是您也在使用其他编程语言?我已经尝试了这段代码,它看起来像我期望的那样工作。从选择中选择*,@rowid:=@rowid+1作为游戏中的rowid,通过在1,3,19,27,57,591611712766868671091189619972536中评级desc t2,选择@rowid:=0作为初始,其中gametype_id=10顺序,2740@MonadNewb行集只是一个复杂的mysql子查询。事实上,我测试了它,但它不起作用:D,还有一个输入错误,在@Alexey的row_number.from中,我意识到我缺少了当前行。是的,我很早就试过了,但它不起作用,因为行数是计数值,在WHERE主体中不可用,但在real列中不可用。