Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用日期排序合并两个表_Php_Mysql_Sorting_Union - Fatal编程技术网

Php 如何使用日期排序合并两个表

Php 如何使用日期排序合并两个表,php,mysql,sorting,union,Php,Mysql,Sorting,Union,我想将两个表的结果合并到一个表中。 请参阅下表: Data from microblog table as Row array Array ( [ID] => 46 [userID] => 1 [userNAME] => user [blog_content] => HAI DEAR [page_name] => honda [page_ID] => 31 [post_time] => 2011-10-18 11:06:54 ) Dat

我想将两个表的结果合并到一个表中。 请参阅下表:

    Data from microblog table as Row array
    Array ( [ID] => 46 [userID] => 1 [userNAME] => user [blog_content] => HAI DEAR [page_name] => honda [page_ID] => 31 [post_time] => 2011-10-18 11:06:54 )
 Data from Page_review table as Row array
    Array ( [page_review_id] => 5 [page_id] => 31 [page_review_by_id] => 31 [page_review_by_username] => user [page_review_time] => 2011-10-18 11:43:34 [page_review_content] => hai ) 
表微博MySQL查询:

DROP TABLE IF EXISTS `featurezme_store`.`microblog`;
CREATE TABLE  `featurezme_store`.`microblog` (
  `ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `userID` int(10) unsigned NOT NULL,
  `userNAME` varchar(45) NOT NULL,
  `blog_content` text NOT NULL,
  `page_name` varchar(45) NOT NULL,
  `page_ID` int(10) unsigned NOT NULL,
  `post_time` datetime NOT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=48 DEFAULT CHARSET=latin1;
表PAGEU审查

DROP TABLE IF EXISTS `featurezme_store`.`page_review`;
CREATE TABLE  `featurezme_store`.`page_review` (
  `page_review_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `page_id` int(10) unsigned NOT NULL,
  `page_review_by_id` int(10) unsigned NOT NULL,
  `page_review_by_username` varchar(145) NOT NULL,
  `page_review_time` datetime NOT NULL,
  `page_review_content` varchar(555) NOT NULL,
  PRIMARY KEY (`page_review_id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1;
表Microblog用于存储博客帖子,page_review用于存储关于页面的评论[微博在页面中]

我的要求是我想显示按日期排序的博客帖子和页面评论[微博上的帖子时间和页面上的页面评论时间]


我该怎么做?请帮帮我。

好的,我已经更新了我的answear,你可以随意使用union

只要有相同数量的字段,并且因为结果被放置在一个字段下,所以使用有意义的字段,使其位于另一个字段下。此示例将显示由特定用户创建的、与特定页面相关的所有博客和评论(如果page_review_by_id实际上指的是用户id)

( 
SELECT  
`microblog`.`userID`, 
`microblog`.`blog_content` as `blog or review`, 
`microblog`.`post_time`, 
`microblog`.`page_id` 
from `microblog`
where `microblog`.`page_id`='1' and `microblog`.`userID`='1' 
)
union
( 
SELECT  
`page_review`.`page_review_by_id`, 
`page_review`.`page_review_content`, 
`page_review`.`page_review_time`, 
`page_review`.`page_id`
from `page_review`
where `page_review`.`page_id`='1' and `page_review`.`page_review_by_id`='1' 
) 
======编辑==建议使用外键的架构================

因为我在您的模式中看不到任何外键,如果我可以选择建议一个应用外键的模式,我将在下面给出一个

此架构支持以下规则:

  • 博客属于站点,而不是用户,因此不存在应用于删除的级联
  • 博客由用户创建,并应用外键,因此当插入用户id时,通过外键确保一致性
  • 对于页面也是如此,外键是applid而不是delte cascade
  • 评论表也是如此
  • 如果删除了用户或页面,则不会删除子行

    /*********创建************/ 创建表
    user
    (
    user\u id
    int unsigned NOT NULL自动递增,
    username
    varchar(16)不为空,
    userpassword
    BLOB,
    主键(
    user\u id
    ) )ENGINE=InnoDB默认字符集=1

    创建表格
    page
    (
    page\u id
    mediumint unsigned NOT NULL自动递增,
    title
    varchar(55)不为空,
    主键(
    page\u id
    ) )ENGINE=InnoDB默认字符集=1

    创建表格
    microblog
    (
    blog\u id
    int unsigned NOT NULL自动增量,
    博客内容
    文本不为空,
    date\u已创建
    datetime不为空,
    author\u id
    int unsigned NOT NULL,
    page\u id
    mediumint unsigned NOT NULL, 主键(
    blog\u id
    ), 约束
    blogfk1
    外键(
    author\u id
    ) 参考资料
    用户
    用户id
    ), /删除级联时没有/ 约束
    blogfk2
    外键(
    page\u id
    ) 参考资料
    page
    page\u id
    ) )ENGINE=InnoDB默认字符集=1

    创建表格
    page\u review
    (
    review\u id
    int unsigned NOT NULL自动递增,
    review_content
    varchar(555)不为空,
    date\u已创建
    datetime不为空,
    author\u id
    int unsigned NOT NULL,
    page\u id
    mediumint unsigned NOT NULL,
    主键(
    review\u id
    ), 约束
    reviewfk1
    外键(
    author\u id
    ) 参考资料
    用户
    用户id
    ), /删除级联时没有/ 约束
    reviewfk2
    外键(
    page\u id
    ) 参考资料
    page
    page\u id
    ) )ENGINE=InnoDB默认字符集=1; /*******************/

    /******插入******/
    插入
    用户
    用户名
    用户密码
    ) 值('username1',AES_ENCRYPT('password1', “encription_key”), ('username22',AES_ENCRYPT('password2', “encription_key”)

    插入
    页面
    标题
    )值 ('title1'),('title2')

    插入
    微博
    博客内容
    创建日期
    作者id
    页面id
    )值 ('blogcontent1','2011-2-2 12:00','1','1'), ('blogcontent2','2011-2-2 12:00','2','2')

    插入
    页面查看
    查看内容
    ),
    date\u created
    author\u id
    page\u id
    )值 (‘回顾内容1’、‘2011-2-2 12:00’、‘1’、‘1’), (‘回顾内容2’、‘2011-2-2 12:00’、‘2’、‘2’); /***************/

    /******查询***/ /有关标识用户的帮助/ 选择
    username
    来自
    user
    其中
    username
    ='username22' 和
    userpassword
    =AES\u ENCRYPT('password2','encription\u key'))

    ( 选择
    微博
    博客内容
    作为
    博客或内容
    微博
    创建日期
    微博
    作者id
    微博
    页面id
    来自
    微博
    其中
    微博
    作者id
    ='1'和
    微博
    页面id
    ='1' ) 联盟 ( 选择
    page\u review
    review\u content
    page\u review
    date\u created
    page\u review
    作者id
    page\u review
    page\u id
    page\u查看
    其中
    page\u review
    author\u id
    ='1'和
    page\u review
    page\u id
    ='1' )


这些是如何关联的,即它们链接到什么上?
page\U id
page\U id
字段?是的,它们是,在微博页面上\U id表示哪个页面的用户发布帖子,在页面上?\U评论-哪个页面评论评论评论。我想我需要这样的内容
SELECT*FROM(选择“post”作为类型,id,userID,blog\U内容,从微博创建时间,其中page\U id=33 U