我需要将数据从 MySQL 数据库提取到多个文本文件中。
我有一个包含 4 列的表格:用户 ID、用户名、标签、分数
。
我需要为每个标签创建一个文本文件,其中包含用户ID、用户名和分数(按分数排序)。
例如
Tag1.txt
234922 John 35
234294 David 205
392423 Patrick 21
Tag2.txt
234922 John 35
234294 David 205
392423 Patrick 21
等等...
最佳答案
我不确定是否有一个查询会自动为您写入每个文件,除非您使用存储过程或某种游标(我对大部分内容都不熟悉)。
但是,您可能会发现以下两个有用的查询:
这将从每个标签中选择得分最高的人并列出它们:
SELECT userid, name, score, tag FROM users
GROUP BY tag
ORDER BY score DESC;
这将从给定标签(本例中为 z-wave)中选择所有分数,按分数顺序:
DECLARE @TagName AS STRING;
SET @TagName = "z-wave";
SELECT userid, NAME, score, tag FROM users
WHERE tag = @TagName
ORDER BY score DESC;
请注意,在您的示例所需结果中,分数似乎不按顺序排列。
关于MySQL:如何从 MySQL 表中提取多个文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2804259/