六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 266|回复: 0

postgresql,ibatis零碎技巧

[复制链接]

升级  56%

4

主题

4

主题

4

主题

童生

Rank: 1

积分
28
 楼主| 发表于 2013-1-30 01:40:47 | 显示全部楼层 |阅读模式
1一个整形的字段type,存的可能是600101,600102这样的数,判断它是不是以6001开头。
在postgresql8.2.5里,即使是integer,也可以直接like '6001%'来判断。在早期的
版本,报错。因此round(type/100)=6001来判断
2
1)因为要一个innerjoin的查询order by 其中一个表的create_time,select必须要把这个create_time写在select里,
2)如果把distinct写在下面语句的select从句里,而不要主的select,查询结果已经是join过的,会重复不准确,所以要如下
  SELECT DISTINCT(qtype) as codeId FROM   (SELECT  q.type as qtype,a.create_time as atime   FROM question as q,answer as a   WHERE a.question_id=q.question_id   and a.user_id=#userId#   order by a.create_time desc  ) as lalala   limit 3
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表