我需要从数据库中获取最后50个标签,数据库中会有更多空行,我需要删除那些空行,同时从数据库中获取数据。有没有办法删除数据库中的空行?
<?
$result = mysql_query("SELECT * FROM tags ORDER by id DESC LIMIT 50");
while($row = mysql_fetch_array($result)) {
$title = str_replace('-',' ',$row['tag']);
if (strlen($title) > 50)
$title = substr($title, 0, strrpos(substr($title, 0, 50), ' ')) . '...';
$title = str_replace('---','-',$title);
$title = str_replace('--','-',$title);
$tag = str_replace('---','-',$row['tag']);
$tag = str_replace('--','-',$tag);
echo "<a href=/mp3/".UrlText($tag)."/ title=\"".$title."\">".$title . "</a> :: ";
}
?>
答案 0 :(得分:2)
要使用空(NULL)tag
字段物理删除行,请使用以下查询:
DELETE FROM tags WHERE tag IS NULL OR tag = '';
如果要保留此行但不希望将其包含在查询集中,请使用此查询:
SELECT *
FROM tags
WHERE tag IS NOT NULL AND tag != ''
ORDER BY id DESC LIMIT 30
答案 1 :(得分:1)
您可以先删除带有null的行,然后从db中检索数据。如果你想要最后50行,那你为什么要使用限制30?
答案 2 :(得分:0)
试试这个..
set.seed(24)
res <- lapply(1:3, function(i) list(AUCFSALL= rnorm(1),
COEFFS= rep(1,5), MODELS= sample(LETTERS, 5)))
TEST <- data.frame(Col1= 1:3)