如何在没有where条件的情况下使用mysql查询从表中获取特定的行值

时间:2016-06-04 14:14:25

标签: php mysql

我有一个数据库表(crane_tbl)

cf_did  cf_firstname cf_comment   cf_cranetype 

1       Alexy         tfhgfnjh       2,3    
2       Thomas        fdghfgh       11,6,3  
3       Thomas         cgjkjhl      5,6,11,3        
4       Thomasxc       cgjkjhl      1,6,9,4         
5       Thomaseg       fdghgh       11,12,3     
6       Thomasm        fsgdfgbd     11,6,3  
7       Thomabs        dgtrty       7,9,11  
8       Rdgfghfdg      bfdhh        1,3,4   
9       Gngfdytyt      eertret      1,6,3   
10      Dvbgfj         hfdhhyrtyr   6,3  

如何在没有where条件的情况下使用mysql查询从此表中获取第5行值,并且不指定任何表字段名称?

2 个答案:

答案 0 :(得分:1)

您可以使用此查询:

{{1}}

但考虑一下情况,当你的桌子会改变时。

答案 1 :(得分:1)

表没有第五个行,因为它们代表无序集。您需要一列来指定排序。

在这种情况下,我认为你的意思是第一栏。然后,您可以使用limitoffset获得第五个 - 基于此列:

select t.*
from t
order by cf_did
limit 1 offset 4;

这也可以写成limit 4, 1

offset从第0行的0开始计数,所以它实际上意味着要跳过的行数。

另外,如果你有cf_did的索引(如果它被声明为主键,则为true),MySQL实际上并不进行排序。