一个视图同步2个表内容主键重复如何解决.有代码

一个视图同步2个表内容主键重复怎么解决.有代码

刚刚接触mysql 不太懂,有劳各位指点.最好贴代码,我好理解.

我先创建视图表

SQL code


  DROP TABLE IF EXISTS `www_home`;

CREATE TABLE `www_home` (
`tid` varchar(50) NOT NULL DEFAULT '' COMMENT '主题ID',
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED;

建立视图

SQL code


  DROP TABLE `www_home`;
CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `www_home`
AS select
   `www_software`.`id` AS `tid`, (id 是主键)
from `www_software`;
UNION
AS select
   `www_game`.`id` AS `tid`, (id 是主键)
from `www_game`;

我想把
www_software和www_game的 id 内容 同步到 www_home tid 中. 但是2个表中的id内容都一样,不能建立视图.

有没有办法 让2个表中id 不管是否重复都写入到 www_home tid 中.




UNION->UNION ALL不行?

举例说明




CREATE VIEW `www_home`

AS 

select

`www_software`.`id` AS `tid`

from `www_software`

UNION ALL

select

`www_game`.`id` AS `tid`

from `www_game`;




用union all代替union

union all不去重




union all与union 的区别,union 是去除重复行的。




探讨

CREATE VIEW `www_home`

AS

select

`www_software`.`id` AS `tid`

from `www_software`

UNION ALL

select

`www_game`.`id` AS `tid`

from `www_game`;

一个视图同步2个表内容主键重复如何解决.有代码

相关文章:

你感兴趣的文章:

标签云: