易截截图软件、单文件、免安装、纯绿色、仅160KB

mysql 查询的问题

假设我有一张表A
两个字段ID date

1 2009-10-10 11:11:11
2 2009-10-10 11:11:13
3 2009-10-10 11:11:15
4 2009-10-10 11:11:17

还有一张表B
三个字段ID A_id date

1 1 2009-10-10 11:11:12
2 1 2009-10-10 11:11:14
3 2 2009-10-10 11:11:16

现在我每往表A添加一条数据,date按照添加时间录入
每当我针对表A的一条数据回复下,就存入表B,时间按录入时间,也就是表B可能有针对A某条数据的数据,也可能没有

现在我想查询出来这样的结果
显示a的ID根据在表B时间倒序顺序排列,如果在表b没有数据,就按照A自己的时间算

4 //最后时间为本身的11:11:17
2 //最后时间为表B的11:11:16
3 //最后时间为本身的11:11:15
1 //最后时间为表B的最新记录11:11:14


表达不是很清晰,希望能帮我
问题补充:可以理解成论坛那样的排列,最新回复了放在最上面,没有回复按时间排列,但是我不能改动数据库

SQL code:
select
id,
isnull(b.`date`,a.`date`) as `date`
from
a
left join
b
on
a.id=b.a_id
and
not exists(select 1 from b t where t.a_id=b.a_id and t.`date`>b.`date`)
order by
`date` desc


SQL code:
mysql> select * from a;
+------+---------------------+
| id | date


相关问答:

Mysql 数据库删除不了怎么办

我之前导入的数据库,现在删除不了,用了命令行和工具都不行,重启也不行,这是为什么呢?
你是如何删除的?
有什么提示?


问题说明越详细,回答也会越准确!参见如何提问。(提问的智慧)

......

MYSQL 数据截取

MYSQL 截取一个数据表中,某一个字段(fulltext) 的前三百个字符,放到该表下另一个字段(introtxt)里.
求实现这个效果的命令
SQL code:
update 表 set introtxt=left(`fulltext`,300);

顶,学习

SQL code: ......

mysql 简单问题

假如数据库中有个test表,表中有id,Name,num,记录时间
id为自增长主键,name是名字,num表示其数量

1  nike  100        系统时间
2  nike  300  &n ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号