我有一个查询。我有两列国家和州的表。我想以下列格式显示列
Country State
----------- ---------
India Delhi
Bangalore
Kolkata
Mumbai
USA California
Florida
Las Vegas
Virginia
这意味着"印度"只在国家/地区列中出现一次,当我从表格中选择国家/地区时,重复的值将在国家/地区列中显示为空白值。
提前致谢
答案 0 :(得分:1)
演示文稿通常并不总是在SQL之外更好地完成,所以我建议在你的表示层运行的任何地方执行此操作,但如果它是查询的要求,你可以使用session执行它变量;
SELECT Country, State FROM (
SELECT IF(Country=@country, '', Country) Country, State, @country := Country
FROM (SELECT Country, State FROM Table1 ORDER BY Country, State) dummy1,
(SELECT @country:='') dummy2
) dummy3;
只是为了显示(可能)更好的方法,您可以使用它来获取每个国家/地区的状态列表,并在您的表示层中进一步处理它;
SELECT Country, GROUP_CONCAT(State) FROM Table1 GROUP BY Country;
答案 1 :(得分:-2)
使用pl / sql.Moreover你的表将是第5范式。