我有两个名为transactions
(TransactionID、HotelID、service..)和services
(id、userid、HotelID、type)的表,我需要从中创建 View 那里。这里第一个表有 15 个元组,第二个表有 8 个元组。
当我编写这个 SQL 查询时:
CREATE VIEW summary
AS
SELECT TransactionID, userid, HotelID, service
FROM transactions, services
WHERE transactions.HotelID = services.name
我在摘要 View 中得到了 105 个结果。我如何摆脱这个重复问题。
最佳答案
据我理解你的问题,我认为你需要使用组连接和使用连接查询进行分组。
使用group by和group concate重复记录就可以解决。
并使用 join 您可以从两个表中获取公共(public)数据。
尝试下面的查询。
目前我不了解您的表结构,这就是为什么我假设您的查询并创建我自己的表并根据它们创建的查询。
例如:
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;
如果您有任何疑问,请随时询问。
关于mysql - 消除 MySQL View 中的重复问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47936025/