mysql - 获取行长度最大的数据,MYSQL

标签 mysql sql r select

我正在尝试从 MYSQL 表中选择前 20 行(我对 MYSQL 非常陌生,我什至不确定它是否可以称为表)。我还有一些条件可以通过使用内部联接来满足,而不是在等之间。经过所有处理后,我有一个如下表

name,h1,h2,h3
a   , 2, 4, 5
b   ,  ,54, 5
c   ,65, 7, 8
d   , 6,  , 3
e   , 7,  ,
f   ,-1, 3,-5

',,' 表示该组合没有数据。我更喜欢那里有类似“NA”的东西 最主要的是,我想选择长度最高的前 20 行。我的意思是长度

name,length

a,3
b,2
c,3
d,2
e,1
f,3

我不需要上面的表格,但根据长度,我需要前 20 行。我可以使用 R 来完成,但表确实很大,我想在 MYSQL 中处理它,然后将表导出到我的计算机。任何帮助将不胜感激。

最佳答案

如果您希望没有值的列为 NA,可以使用 IFNULL(col, 'NA')

select name , h1,h2,h3 
from table 
order by   LENGTH(CONCAT(h1,h2,h3))  desc
limit 20 

关于mysql - 获取行长度最大的数据,MYSQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27007283/

相关文章:

r - 保存 ggplotGrob 生成的 ggplot2 时间序列图 grob

php - 无限重定向循环+ php不回显变量

php - 重定向后丢失 session 变量

sql - Oracle 记录(行)元数据包括时间戳

r - 跨多列的每行的最小(或最大值)值

r - 如何获取函数使用的参数的列表?

mysql - SELECT * 语句上的 SQL IFNULL

ios - CoreData - 具有优先级的多对多关系

mysql - mysql 上的总和会计 session 避免重复

php - sql只对一个表全选