SQL Server下HackerRank双城市查询多余表头问题求助
解决SQL Server在HackerRank多查询重复表头问题
- 核心原因:HackerRank的SQL沙箱会为每个独立的SELECT语句生成带表头的结果集,多个查询同时执行就会输出多组表头,触发判题错误。
- 解决办法:将两个查询合并为一个结果集,使用
UNION或UNION ALL关键字:- 确保两个查询输出的列数、列数据类型完全匹配,列名不一致时给列加相同别名。
- 用
UNION ALL合并(保留重复行,效率更高)或UNION合并(自动去重),示例如下:
原两个独立查询:
SELECT city FROM stations WHERE id % 2 = 0; SELECT city FROM stations WHERE id % 2 = 1;
修改为合并查询:
SELECT city FROM stations WHERE id % 2 = 0 UNION ALL SELECT city FROM stations WHERE id % 2 = 1;
这样执行后只会生成一组表头,结果集符合平台判题要求。
内容的提问来源于stack exchange,提问作者andrelabbe
相关产品推荐
相关产品推荐

