我需要创建一个查询,在其中我获得具有最近时间戳日期的行。我知道MAX
不能在WHERE
条款中使用,但我需要这样的东西:
SELECT * FROM data WHERE MAX(timestamp)
答案 0 :(得分:1)
如果您只想要一行,请使用awk 'FNR==3 {next}
# skip first three lines in file1
{FS = OFS = "\t"}
# define input and output as tab-delimited
NR==FNR{c[$1]; next} ($1":"$2) in c && NR==FNR{c[$5];next}$4 in c && $2 ~ /SNV|INDEL/ && $3=="exonic"' file1 file2
# process each line in file matching on criteria
和chr4:55141050 INDEL exonic synonymous c.1697_1711delGCCCAGATGGACATG
:
order by
如果你想在领带的情况下所有这些行,那么你可以使用:
limit
答案 1 :(得分:0)
是的,MAX
子句不能在WHERE
子句中使用,因为它是一个用于分组的聚合函数。但是,它可以在HAVING
子句中使用,您可以将其视为与WHERE
等效的分组。
例如,这是有效的:
SELECT *
FROM table1
GROUP BY name
HAVING MAX(amount) < 1000
这只是一个例子,显然不能做你想做的事。戈登的答案就是你所需要的,但我只想回答你在条件中使用像MAX
这样的聚合函数的问题。