删除 MySQL 视图中的重复问题
Removing Duplicating Issue in MySQL views
我有两个 table,分别称为 transactions
(TransactionID、HotelID、service..)和 services
(id、userid、HotelID、类型),我需要创建视图从那里。在这里,第一个 table 有 15 个元组,第二个有 8 个元组。
当我写这个 SQL 查询时:
CREATE VIEW summary
AS
SELECT TransactionID, userid, HotelID, service
FROM transactions, services
WHERE transactions.HotelID = services.name
我在摘要视图中得到了 105 个结果。我如何摆脱这个重复问题。
据我了解你的问题,我认为你需要使用 group concate 和 group by using join query。
使用 group by 和 group concat 重复的记录将得到解决。
并使用 join 您可以从 table.
获取公共数据
试试下面的查询。
目前我不了解你的 table 结构,这就是为什么我假设你的查询并创建我自己的 table 并根据它们创建的查询。
例如:
select
c.country_id,c.country_name,group_concat(s.state_id),group_concat(s.state_name) from country c inner join state s on c.country_id =s.country_id group
by c.country_id;
如果您有任何疑问,请随时提出。
我有两个 table,分别称为 transactions
(TransactionID、HotelID、service..)和 services
(id、userid、HotelID、类型),我需要创建视图从那里。在这里,第一个 table 有 15 个元组,第二个有 8 个元组。
当我写这个 SQL 查询时:
CREATE VIEW summary
AS
SELECT TransactionID, userid, HotelID, service
FROM transactions, services
WHERE transactions.HotelID = services.name
我在摘要视图中得到了 105 个结果。我如何摆脱这个重复问题。
据我了解你的问题,我认为你需要使用 group concate 和 group by using join query。
使用 group by 和 group concat 重复的记录将得到解决。
并使用 join 您可以从 table.
获取公共数据
试试下面的查询。
目前我不了解你的 table 结构,这就是为什么我假设你的查询并创建我自己的 table 并根据它们创建的查询。
例如:
select c.country_id,c.country_name,group_concat(s.state_id),group_concat(s.state_name) from country c inner join state s on c.country_id =s.country_id group by c.country_id;
如果您有任何疑问,请随时提出。