sql语句可以查出来,但是mybatis查不出来,用的是orcale数据库

XML中内容:

 <sql id="subscriptionColumn">
        sub.id "sub.id",
        sub.no "sub.no",
        sub.linkman "sub.linkman",
        sub.phone "sub.phone",
        sub.email "sub.email",
        sub.status "sub.status"
    </sql>

<resultMap type="entity.SubScription" id="subScriptionResultMapper">
        <id property="id" column="sub.id"/>
        <result property="no" column="sub.no"/>
        <result property="linkman" column="sub.linkman"/>
        <result property="phone" column="sub.phone"/>
        <result property="email" column="sub.email"/>
        <result property="status" column="sub.status"/>
</resultMap>

<select id="selectBySubScriptions" parameterType="vo.SubScriptions" resultMap="subScriptionResultMapper">
        select <include refid="subscriptionColumn"></include>
        from category c,
        subscription sub,
        subscription_dtl dtl,
        room r,
        member m
        where m.id=sub.mid
        and sub.mid=dtl.sid
        and r.id=dtl.rid
        and r.cid=c.id
            <if test="categroyId!=null">and c.id=#{categroyId}</if>
            <if test="status!=null">and sub.status=#{status}</if>
            <if test="no!=null">and sub.no=#{no}</if>
            <if test="memberName!=null">and m.username=#{memberName}</if>
            <if test="sdate!=null">and dtl.sdate&gt;#{sdate}</if>
            <if test="edate!=null">and dtl.edate&lt;#{edate}</if>
</select>

接口dao

public interface SubScriptionDao {
    public List<SubScription> selectBySubScriptions(SubScriptions subScriptions);
}

自己写的测试类,用工厂创建实例对象

 public class text {
    public static void main(String[] args) {
        SubScriptionDao subScriptionDao=(SubScriptionDao) ObjectFactory.getObject("subScriptionDao");
        SubScriptions ss=new SubScriptions();
        List<SubScription> s = subScriptionDao.selectBySubScriptions(ss);
        System.out.println("list:"+s);
    }
}

控制台也没报错,使用下面Log4J中的sql语句可以在数据库中查到数据:

 DEBUG ooo Using Connection [oracle.jdbc.driver.T4CConnection@15e2075]
DEBUG ==>  Preparing: select sub.id "sub.id", sub.no "sub.no", sub.linkman "sub.linkman", sub.phone "sub.phone", sub.email "sub.email", sub.status "sub.status" from category c, subscription sub, subscription_dtl dtl, room r, member m where m.id=sub.mid and sub.mid=dtl.sid and r.id=dtl.rid and r.cid=c.id 
DEBUG ==> Parameters: 
List[]

数据库中内容:
1 1478199128994 fsa sfadfs dfsfsad 未生效
2 1478200504349 熊峰 3412 421412 未生效

1个回答

这种情况是参数的错误

qq_21976567
JavaEE小能手 我也遇到了这个问题,我用逆向工具生成的,在PLSQL里面运行日志打印的sql语句可以查出来,同一个类型的条件换一个也能查
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
sql语句可以查出来,但是mybatis查不出来,用的是mysql数据库
问题:mybatis查出来的时候,browsingVolume数据为null,但是数据库中却是有数据的原由:数据库的字段名称和参数不对应
两天了,数据库可以查出来,vb就查不出来
查询语句SELECT * FROM tblTask WHERE [UserId]=1 and ([TaskInstruction] like '*大*');rn数据库access建个查询可以查处一条记录rnrn用vb 建了一个窗体,窗体有个文本框,一个按钮,代码rnPrivate Sub Command1_Click()rnstrSql = Text1.TextrnSet TaskRct = New ADODB.Recordsetrn TaskRct.Open strSql, TaskConrnSet TaskRct = TaskCon.Execute(strSql)rn rnIf TaskRct.BOF And TaskRct.BOF Thenrn MsgBox "没有记录"rn End IfrnEnd SubrnrnPrivate Sub Form_Load()rnCall ConnectToServerrnEnd Subrnrn一个模块rn
Navicat中可以查出数据,但是mybatis查不出来
     今天在写代码的时候突然发现以下的问题:真是让我很是奇怪,就是为什么数据库中有数据,而且我是把控制台打印的sql复制到Navicat中去执行的,所以应该不会存在问题,那么是什么原因,导致代码中查不出来数据呢?     因为是公司的项目,所以我试了下其它的功能发现查询都是有数据的,但是发现那些查询条件不是中文,所以我就开始想,是不是配置文件中没有配置utf-8。 idea控制台打印的sq...
用sql直接查数据库有多条 在项目中mybatis嵌套查询查出来只有1条是为什么
jrn[code=java]rnpublic PageInfo getMourningRecordPageInfo(Map paramMap,int pageNum,int pageSize,String order)rn PageHelper.startPage(pageNum, pageSize);//设置分页rn PageHelper.orderBy(order);rn List list=mourningRecordMapper.getMourningRecordListMap(paramMap);rn PageInfo page=new PageInfo(list);rn return page;rn rn rn[/code]rn[code=text]rnrn select c.`name`,c.`schedule_flag`,c.`cremation_time`,c.`age`,c.`sex`,b.`name` as bname,m.`begin_time` from y_mourning_record m,y_commission_order c,ba_mourning b where m.commission_order_id = c.id and m.mourning_id=b.id rn rn and m.flag=#flagrn rn rn and ( ( m.begin_time >= #beginDate and m.begin_time <= #endDate ) rn or ( m.end_time >= #beginDate and m.end_time <= #endDate ) rn or ( m.begin_time <= #beginDate and m.end_time >= #endDate ))rn rn rn and ( m.begin_time >=#mourningbeginDate )rn and ( m.begin_time <= #mourningendDate )rn rn rn and c.name like CONCAT('%', #searchVal,'%')rn rn rn and b.name like CONCAT('%', #searchVal,'%')rn rn rnrn rn rn rn rn -->rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn[/code] rnnavicat结果[img=https://img-bbs.csdn.net/upload/201607/16/1468658314_170547.jpg][/img]rn项目显示结果[img=https://img-bbs.csdn.net/upload/201607/16/1468658373_355465.jpg][/img]rn奇怪的是page里面的total条数有4条 但是page里面的list只有一个对象[img=https://img-bbs.csdn.net/upload/201607/16/1468658773_534545.jpg][/img]
我觉得我发现了VB的Bug了,用数据库可以查出来,用VB就是查不出来??
环境Windows2000 VB6.0 Access2000,请按我的顺序来rn1、rnAccess2000建一个数据库Datatask1,在里面建一张表,表名为"表1"rn表中有三个字段 ID (自动编号) userid(数字) name (文本)rn输入一条数据 1,1,重大 (第一个不用输入)rn建一个查询,名字不限,内容 SELECT * FROM 表1 WHERE [userid]=1 and ([name] like '*大*');rn2、rn打开VB,建一个工程,在窗体中加一个文本框和一个按钮,加入ADO2.5引用,输入代码rnPublic TaskCon As New ADODB.ConnectionrnPublic TaskRct As ADODB.RecordsetrnPrivate Sub Command1_Click()rnstrSql = Text1.TextrnSet TaskRct = New ADODB.RecordsetrnTaskRct.Open strSql, TaskConrnrnIf TaskRct.BOF And TaskRct.BOF ThenrnMsgBox "没有记录"rnEnd IfrnEnd SubrnrnPrivate Sub Form_Load()rnTaskCon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\DataTask1.mdb;Persist Security Info=False"rnTaskCon.OpenrnEnd Subrn3、运行数据库查询,你可以查到一条记录,rn4、运行VB,在文本框里粘入查询内容,点按钮,就是没记录rnrnrn
模糊查询中为什么"C++"查不出来,但是C可以查出来,声明不是因为空格的问题.
谢谢大虾
oracle数据库sql developer 用SQL可以查到数据,但是程序却查不出来
使用 oracle sql developer 刚刚插入了一批数据,自己用sql查的到,但是JDBC程序查不到,原因很简单,oracle sql developer默认是不提交事务的,所以这条记录并没有真正写到数据库里面,提交一下,问题解决!   ...
SQL数据库语句哪里查?
//获取用户信息rnSqlDataReader dr = db.reDr("select * from tb_User where UserName='" + userName + "' and PassWord='" + passWord + "'");rnrn这是一个例程中看到的。。rn我想知道 在哪里可以查到这些语句的用法?rn详细一点,完整一点
这个语句为什么查不出来
select * from h_xzmx where bdhm ='000000187893'rn查到无该纪录rnrnselect * from temptable where bdhm ='000000187893'rn查到有该纪录,找到一条rnrnrnselect * from temptable where bdhm not in (select bdhm from h_xzmx)rn无纪录。rnrn问题:h_xzmx是个工资集合,有数千条保单号码,TEMPTABLE是一个业务员的临时表,该表中有的保单号bdhm会出现在h_xzmx中,有的不出现。另两个表中都存在少数NULL值rn那么例题中的保单号,既然工资中没有,临时表中有。那我用第三句语句查哪些在临时表中有的,但在工资表中没有的,结果一条也没找到,那与上述单项查询逻辑不符啊,用TRIM等办法我都试过了,仍然没用。
SQL 语句中用* 代替所有列名,为什么查不出来,换回来就能查出来
我正研究一个oa系统,用ASP编写,数据库用sql server ,其中有的表格内容显示不全,但数据库中确有其项,数据库连接没问题,sql语句用* 代替所有列,怎么改也显示不全(但有两,三项显示),最后用列名代替* 问题解决,我想弄明白,着到底是为什么,请各位大侠指教。多谢,多谢!
为什么数据库查不出来数据
用一下代码在jsp中输出一些数据。rn但是执行后,查不到数据,也不抱任何错。rn我把sql语句放在sql2000的查询分析器中,可以查到数据。rn到底哪里有问题?rnrnrnrn<% rn rn ann_boardid=(String)session.getAttribute("ann_boardid");rn ann_classid=(String)session.getAttribute("ann_classid");rn ann_fid=(String)session.getAttribute("ann_fid");rn ann_lid=(String)session.getAttribute("ann_lid");rn String tr_color;rn String ann_id;rn String ann_topic;rn String ann_username;rn String ann_userid;rn String ann_visit;rn String restore_id;rn String restore_username;rn String restore_time;rn DBConnect conn=new DBConnect();rn String sql="select a.ann_id , a.ann_topic ,a.ann_userid, a.ann_username , a.ann_visit , r.restore_id,r.restore_username,r.restore_time from (select * from announces where announces.ann_boardid="+ann_boardid+" and announces.ann_sort='"+ptjh+"' and announces.ann_id>="+ann_fid+" and announces.ann_id <="+ann_lid+") a,(select top 1 * from restores where restores.restore_boardid="+ann_boardid+" order by restores.restore_id desc ) r";rn rn tryrn conn.excuteQuery(sql);rn while(conn.next())rn ann_id=conn.getString("ann_id");rn ann_topic=conn.getString("ann_topic");rn ann_username=conn.getString("ann_username");rn ann_userid=conn.getString("ann_userid");rn ann_visit=conn.getString("ann_visit");rn restore_id=conn.getString("restore_id");rn restore_username=conn.getString("restore_username");rn restore_time=conn.getString("restore_time");rn if( Integer.parseInt(ann_id) %2==0)tr_color="#f0f0f0";elsetr_color="#d0d0d0";rn rn %>rn rn >rn <%=ann_topic %> rn <%=ann_username %> rn <%=restore_id %>/<%=ann_visit %> rn <%=restore_username %> rn <%=restore_time %> rn rn rn <%rn catch(Exception e)e.printStackTrace();rn finallyconn.close();rn %>
sql用户名密码查不出来
我在单位OTIS的电梯管理系统的EMS系统有点问题,管理进不出了。但数据库可以进去。user和密码都能看到。但密码不知道是什么,系统也进不去,请高手指点。rn user_name passwordrn engineer pn=rn manager tauzrn rnrn请问“pn=”密码明文是什么啊。
【求助】oracle 有数据,但是查不出来
select * from test where id='00000000000000000087';rn如果在工具中查询,有一条记录。rn但是在java中rn String gg = "select * from test where id='00000000000000000087'";rn PreparedStatement stmt = conn.prepareStatement(gg);rn ResultSet rs = stmt.executeQuery();rnrnrs无值,id的类型为 VARCHAR2(20)rnrn多谢!
急急,简章的错误,但是我查不出来。
http://www.ytqtoyota.com/WebSite119/default.aspxrn我在本地都能运行的。可以传到网上,怎么运行不了了,rn提示:rn名称以无效字符开头。处理资源 'http://www.ytqtoyota.com/WebSite119/default.aspx' 时出错。第 1 行,位置: 2 rnrn<%@ page language="C#" masterpagefile="~/MasterPage.master" autoeventwireup="true" inherits="Flowers.Web.Default, App_Web...rnrn这是怎么回事呀。!谁能告诉我。
有错误,但是我查不出来。HELP!
我在一个页面上放了一个DropDownList和一个TextBox,我想用dropdownlist中rn选中的值和textbox中输入的值作为条件进行查询。可是页面运行时有错误,提示rn是:异常详细信息: System.Data.SqlClient.SqlException: 第 1 行: '=' 附近有语法错误。哪位能帮我看看?我自己查不出来,急啊rnrn代码如下:rnvoid SubmitBtn_Click(Object Sender, EventArgs e) rn SqlConnection myConnection = new SqlConnection((String) ConfigurationSettings.AppSettings["gaowei"]);rnSqlDataAdapter myCommand = new SqlDataAdapter("select * from case_info where case_char=" + casechar.SelectedItem.Value + " and county like '%" + county.Text.ToString() + "%'", myConnection);rn myConnection.Open();rn DataSet ds = new DataSet();rn myCommand.Fill(ds);rn MyDataGrid.DataSource = ds ;rn MyDataGrid.DataBind();rn myConnection.Close();rn
数据库中数据有更新,但是Hibernate查不出来
上网搜了一下,问题应该和这个一样:rnhttp://topic.csdn.net/u/20070901/14/86277d94-8b50-4ffb-88ab-657867fc8baf.htmlrnrnrnrnrn我直接在mysql控制台insert一条语句(肯定commit的)。rn然后在页面上查询,发现查询不到新插入的数据。rn在控制台删除一些记录,发现在页面上还是可以查询到被删的数据。rn这是否和Hibernate自己实现的那个数据源有关系?rnrn请各位解释。谢谢!
有难度,奇怪的问题,部分能查出来,部分查不出来
用.net通过oledb方式查询vfp数据库,vfp版本vfp7,查询条件中有日期,在跟踪时有些日期可以查到数据,有些不可以,在跟踪过程中,将无法查到记录的sql语句原样复制到vfp环境中,可以查到数据。
ORCALE数据库语句报错提示
select a.ObjectID,a.WorkflowCode,b.ParentPid,a.CreatedTime,c.DisplayName+'['+a.WorkflowCode+']' as WorkflowName,rn(CASE WHEN a.PlanFinishTime>=a.FinishTime THEN 0 ELSE 1 END) AS IsOverTimern,round(a.UsedTime / 600000000 ,2)as UseMinute1rn,round(a.UsedTime / 600000000,2) as UseMinute2rn,round(a.UsedTime / 600000000 ,2)as UseMinute3rn,datename(YEAR,a.StartTime)+datename(MONTH,a.StartTime) as CreatedMonth,1 as WorkflowCountrnfrom OT_InstanceContext as arninner join OT_OrganizationDim as b on a.Originator=b.ChildIdrninner join OT_WorkflowClause as c on a.WorkflowCode=c.WorkflowCodernwhere a.[State]=4rnrn看看这个orcale语句有没有不对的地方rn在线等,感谢!!!!
常用SQL语句(for orcale,mysql)
各种常见SQL基础语法,适合初学数据库的你!
orcale 从 链接服务器 查数据的 SQL
我建了一个链接服务器,服务名叫Test10, 想查用户M_TT下表DEM_DEVICE_INFO的数据rn请问SQL该怎么写,谢谢。
同样的sql在java项目中查出来是空(mybatis)
在页面上  在执行SQL 前的最后一部将SQL 打印出来看看 一定是页面拼接出现了一些问题 这些问题很可能是单引号  双引号之类的差别 如果是接口调用的时候,参数上不能加引号http://localhost:8080/项目/api/method/oneLevel?type=0eec69acb6314cb685949bc8e64146ab...
Bug:数据库的有数据,但是查出来是0
场景: 公司的业务很多方面不成熟导致的数据库设计的时候字段类型有些不统一,导致以下bug的产生 如图数据库的查询结果如下: 但是我查出来的数据总是0.然后就悲剧了,跟代码发现就是很奇怪的现象:把mybatis中sql在sql server中执行是可以的,但是返回的resultmap中的相应字段是0. 查了半天发现,是类型不对应: 数据库中是decimal类型,在java程序中
求一orcale的sql语句
有个商品表p和分类表c。rn其中商品表p结构如下:rnpid cid pnamern1 1 电脑rnrn分类表c结构如下:rncid cNamern1 电子产品rnrnp表的cid外键关联c表的主键cid。现在想查询商品表p的第page页ncount条一页数据,得到数据如下:rnpid cid cName pnamern1 1 电子产品 电脑rnrn高效的sql语句怎么写?
SQL标签数据库里查用户名是中文的查不出来,英文可以。
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>rn<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>rnrn<%rnString path = request.getContextPath();rnString basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";rn%>rnrnrnrn rn rn rn My JSP 'login_ex.jsp' starting pagern rn rn rn rn rn rn rnrn rnrn rn rn rn rn rn rn rn rn rn select * from tblUser where username = rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn
[SQL SERVER] 用什么语句可以查当前字符集。
rnrn 想从另一电脑上移植一 SQL SERVER 数据库,但不知他装的是什么"字符集"及排序方法。rnrn用什么语句但当前字符集? 另还有什么要注意的。
关于orcale varchar2查询数字查不出来的问题
可以看一下,你的值后面是不是有空格,如果有的话,在拿值时就要去掉 例子如下: java if(dwid!=null){ dwid = dwid.trim(); while (dwid.startsWith(" ")) {//这里判断是不是全角空格 dwid = dwid.substring(1, dwid.length()).trim(); } while (dwi...
java异常-一条sql在Navicat里能查出数据,但是mybatis查不出来
1、xml里把#换成$接收参数,不预编译(比如in查询时,拼装好的ids) 2、可能是映射出错。(resultMap错了或者resultType错了) resultMap可以连续写多个。 3、参数错了,多了符号。比如 需要 id= '87adbdd21e61267ee01' 前端给的id是 '87adbdd21e61267ee01'   所以查询就变成了id= ''87adbdd21e6...
sql语句会将数据库查“死”!!
select * from (select rownum r,t.* from (select * from CDRInfo order by begintime desc) t where begintime>=TO_DATE('2005-01-01 00:00:00','YYYY-MM-DD hh24:mi:ss') and begintime<=TO_DATE('2005-01-01 23:59:59','YYYY-MM-DD hh24:mi:ss') and rownum < 21) t where t.r >10rn这句sql语句有问题吗?一运行时就会将数据库查“死”!!rn
sql语句查一个条件到多个数据库
where 一个条件,到数据库1 user 表查找,找到就返回rnrn查找不到。rnrnrn再到数据库2 user 查找,找不到再到数据库3 查找rnrn前提在找不到的情况下。要是没有2号 3号数据库,就返回失败。rnrn这个语句要怎么查呢rnrn我是一个网站会员里面 通过id关联出 其他数据库的 会员资料
Sql Server语句改为为Orcale语句
nn```n CREATE TABLE [dbo].[Table_1](n [ID] [nvarchar](50) NULL,n [Material] [nvarchar](50) NULL,n [Projects] [nvarchar](50) NULL,n [Calculate] [nvarchar](50) NULL,n [Datass] [nvarchar](50) NULL,n [Formula] [nvarchar](50) NULL,n [Tolerance] [nvarchar](50) NULL,n [Standard] [nvarchar](50) NULLn) ON [PRIMARY]nnGOnINSERT INTO [Table_1] VALUES (1, '硫酸亚铁_含量', '质量', '否', 10, '', '', '');nINSERT INTO [Table_1] VALUES (2, '硫酸亚铁_含量', '体积', '否', 20, '', '', '');nINSERT INTO [Table_1] VALUES (3, '硫酸亚铁_含量', '标液', '否', 30, '', '', '');nINSERT INTO [Table_1] VALUES (4, '硫酸亚铁_含量', '含量', '是', '', ' 体积*标液*0.27801/质量', '≤0.4%', '');nINSERT INTO [Table_1] VALUES (5, '硫酸亚铁_二氧化钛', '质量1', '否', 0.25, '', '', '');nINSERT INTO [Table_1] VALUES (6, '硫酸亚铁_二氧化钛', '质量2', '否', 0.35, '', '', '');nINSERT INTO [Table_1] VALUES (7, '硫酸亚铁_二氧化钛', 'm', '否', 0.45, '', '', '');nINSERT INTO [Table_1] VALUES (8, '硫酸亚铁_二氧化钛', '含量', '是', '', '5*m/质量1', '≤0.02%', '');nINSERT INTO [Table_1] VALUES (9, '硫酸亚铁_水不溶物', '质量1', '否', 0.11, '', '', '');nINSERT INTO [Table_1] VALUES (10, '硫酸亚铁_水不溶物', 'm1', '否', 0.66, '', '', '');nINSERT INTO [Table_1] VALUES (11, '硫酸亚铁_水不溶物', 'm2', '否', 0.88, '', '', '');nINSERT INTO [Table_1] VALUES (12, '硫酸亚铁_水不溶物', '含量', '是', '', '(m2-m1)/质量1', '≤0.04%', '');nINSERT INTO [Table_1] VALUES (13, '烧碱', '质量', '否', 0.99, '', '', '');nINSERT INTO [Table_1] VALUES (14, '烧碱', '体积', '否', 0.44, '', '', '');nINSERT INTO [Table_1] VALUES (15, '烧碱', '标液', '否', 11.5, '', '', '');nINSERT INTO [Table_1] VALUES (16, '烧碱', '含量', '是', '', '体积*标液*0.8/质量', '≤0.1%', '≥30.0%');nINSERT INTO [Table_1] VALUES (17, '双氧水_含量', '质量', '否', 1.56, '', '', '');nINSERT INTO [Table_1] VALUES (18, '双氧水_含量', '体积', '否', 1.913, '', '', '');nINSERT INTO [Table_1] VALUES (19, '双氧水_含量', '标液', '否', 1.55, '', '', '');nINSERT INTO [Table_1] VALUES (20, null, null, null, null, null, null, null);nnDECLARE @Material VARCHAR(20),@Projects VARCHAR(20),@Datass NUMERIC(6,4),@Formula VARCHAR(50),@Sql VARCHAR(50)nDECLARE my_cur1 CURSOR FOR --读取Material的公式nSELECT Material FROM Table_1 WHERE Calculate='是'nOPEN my_cur1nnFETCH NEXT FROM my_cur1 INTO @MaterialnWHILE @@FETCH_STATUS=0nBEGINnSELECT @Formula = Formula FROM Table_1 WHERE Material=@MaterialnnDECLARE my_cur2 CURSOR FOR --读取ProjectnSELECT Projects FROM Table_1 WHERE Material=@Material AND Calculate<>'是'nOPEN my_cur2nFETCH NEXT FROM my_cur2 INTO @ProjectsnWHILE @@FETCH_STATUS=0nBEGINnSELECT @Datass=Datass FROM Table_1 WHERE Material=@Material AND Projects=@ProjectsnSET @Formula=REPLACE(@Formula,@Projects,@Datass) --replace替换公式nFETCH NEXT FROM my_cur2 INTO @ProjectsnENDnPRINT @Material nPRINT @Formula nnSET @Sql='select '+@FormulanEXEC (@Sql)nPRINT @DatassnnCLOSE my_cur2nDEALLOCATE my_cur2nnFETCH NEXT FROM my_cur1 INTO @MaterialnENDnCLOSE my_cur1nDEALLOCATE my_cur1nn```n并且把结果添加到临时表 显示出所有项,nn
Orcale 语句转化为SQL 语句
各位大神请帮忙看下下面语句如何转化,rnrnrn[code=sql](sum(case when to_char(a.日期,'yyyymmdd') between to_char(trunc(sysdate-1, 'mm'),'yyyymmdd') and to_char(sysdate-1,'yyyymmdd') then a.tddv中小件自营fbp end)/rnsum(case when to_char(a.日期,'yyyymmdd') between to_char(trunc(add_months(sysdate,-12)-1,'mm'),'yyyymmdd') and to_char(add_months(sysdate,-12)-1 ,'yyyymmdd') then a.tddv中小件自营fbp end))-1 as 中小件_TDDV月累计同比去年,[/code]rnrn[code=sql](sum(case when to_char(a.日期,'yyyymmdd')=to_char(sysdate-1,'yyyymmdd') then a.tddv中小件自营fbp end)/rnsum(case when to_char(a.日期,'yyyymmdd')=to_char(sysdate-365,'yyyymmdd') then a.tddv中小件自营fbp end))-1 as 中小件_TDDV同比去年[/code]
同一条SQL语句,myBatis查出来的数据和Navicat查出来的数据不同
通过日志打印的mybatis执行的SQL语句,原原本本复制到数据库,可以查出来很多条数据,但是mybatis要么查不到,要么少数据。n1.已尝试过写死传入参数,证明不是参数问题n2.尝试过select *,无效n3.尝试过查询的数据不小于resultMap里面的数据,也无效n4.写一个POJO类(是叫DTO吧?)来接收数据,也无效n5.SQL语句很简单,而且是通过复制到数据库,以及属性名都是通过复制,不存在写错。nn走投无路了。。nn以下是代码段以及日志:n日志:nn```n 2018-07-02 14:05:00,244 DEBUG [org.mybatis.spring.SqlSessionUtils] - Releasing transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@5f2b1d49]n2018-07-02 14:05:00,244 DEBUG [org.mybatis.spring.SqlSessionUtils] - Fetched SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@5f2b1d49] from current transactionn2018-07-02 14:05:00,244 DEBUG [com.talk915.liveManagement.webapp.dao.group.VideoRecordDao.getDataByRoomIdforquery] - ==> Preparing: select v.VideoStream videoStream,v.FileSize fileSize,v.Quality quality,v.UserType userType from vod_videorecord v where trim(v.RoomID) = ? n2018-07-02 14:05:00,244 DEBUG [com.talk915.liveManagement.webapp.dao.group.VideoRecordDao.getDataByRoomIdforquery] - ==> Parameters: 9(Integer)n2018-07-02 14:05:00,316 DEBUG [com.talk915.liveManagement.webapp.dao.group.VideoRecordDao.getDataByRoomIdforquery] - <== Total: 17n2018-07-02 14:05:00,316 DEBUG [org.mybatis.spring.SqlSessionUtils] - Releasing transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@5f2b1d49]n2018-07-02 14:05:00,316 DEBUG [org.mybatis.spring.SqlSessionUtils] - Fetched SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@5f2b1d49] from current transactionn2018-07-02 14:05:00,316 DEBUG [com.talk915.liveManagement.webapp.dao.group.VideoRecordDao.getDataByRoomIdforquery] - ==> Preparing: select v.VideoStream videoStream,v.FileSize fileSize,v.Quality quality,v.UserType userType from vod_videorecord v where trim(v.RoomID) = ? n2018-07-02 14:05:00,316 DEBUG [com.talk915.liveManagement.webapp.dao.group.VideoRecordDao.getDataByRoomIdforquery] - ==> Parameters: 3(Integer)n2018-07-02 14:05:00,393 DEBUG [com.talk915.liveManagement.webapp.dao.group.VideoRecordDao.getDataByRoomIdforquery] - <== Total: 1143n2018-07-02 14:05:00,394 DEBUG [org.mybatis.spring.SqlSessionUtils] - Releasing transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@5f2b1d49]n2018-07-02 14:05:00,394 DEBUG [org.mybatis.spring.SqlSessionUtils] - Fetched SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@5f2b1d49] from current transactionn2018-07-02 14:05:00,394 DEBUG [com.talk915.liveManagement.webapp.dao.group.VideoRecordDao.getDataByRoomIdforquery] - ==> Preparing: select v.VideoStream videoStream,v.FileSize fileSize,v.Quality quality,v.UserType userType from vod_videorecord v where trim(v.RoomID) = ? n2018-07-02 14:05:00,394 DEBUG [com.talk915.liveManagement.webapp.dao.group.VideoRecordDao.getDataByRoomIdforquery] - ==> Parameters: 2(Integer)n2018-07-02 14:05:00,472 DEBUG [com.talk915.liveManagement.webapp.dao.group.VideoRecordDao.getDataByRoomIdforquery] - <== Total: 36n2018-07-02 14:05:00,472 DEBUG [org.mybatis.spring.SqlSessionUtils] - Releasing transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@5f2b1d49]n2018-07-02 14:05:00,472 DEBUG [org.mybatis.spring.SqlSessionUtils] - Fetched SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@5f2b1d49] from current transactionn2018-07-02 14:05:00,472 DEBUG [com.talk915.liveManagement.webapp.dao.group.VideoRecordDao.getDataByRoomIdforquery] - ==> Preparing: select v.VideoStream videoStream,v.FileSize fileSize,v.Quality quality,v.UserType userType from vod_videorecord v where trim(v.RoomID) = ? n2018-07-02 14:05:00,472 DEBUG [com.talk915.liveManagement.webapp.dao.group.VideoRecordDao.getDataByRoomIdforquery] - ==> Parameters: 1(Integer)n2018-07-02 14:05:00,546 DEBUG [com.talk915.liveManagement.webapp.dao.group.VideoRecordDao.getDataByRoomIdforquery] - <== Total: 575n```nn以最后一条查询语句为例n: select v.VideoStream videoStream,v.FileSize fileSize,v.Quality quality,v.UserType userType from vod_videorecord v where trim(v.RoomID) = ? nn参数:1n返回条数:575条n数据库数据: 594条nn这是差的少的情况,差的多了,直接差了几百,一千条数据都是.. nn数据库数据:n![图片说明](https://img-ask.csdn.net/upload/201807/02/1530513646_410092.png)nnmapper里面代码段:n![图片说明](https://img-ask.csdn.net/upload/201807/02/1530513593_738695.png)nnnn
查车牌的SQL语句
ADOQuery1.SQL.Text:='select * from basicdata where cncarnum='''+粤Z.+trim(edit4.text)+港+'''';rn我想让用户只输车牌号码中间的字符前后固定的就不用输了,这条SQL报错?
sql语句 查重名 ?
表 ttt( name varchar(20), addr varchar(20))rnrn其中 name有重复数据. rnrn怎么查出 name 重复的 内容. 没有重复的name不需要出现到结果里.rn
c 操作SQL(orcale数据库)
现在有两个表 A ,B(列名有的相同 有的不相同)rn想把A里的数据插入B里rn判断B表是否为空 ,若空则从A插入数据到B表(只插入A ,B 列名相同的)rn若不为空则用A的数据修改B表
sql语句查重
SELECT c.certificate_no, count(c.id) FROM len_borrower_info c GROUP BY c.certificate_no HAVING count(c.id) > 1
sql查重复语句
select * from aa where banji in (select banji from aa GROUP BY banji HAVING COUNT(banji)>1)
SQL语句查原因
这个视图总是报错,大家指点一二。rncreate or replace view v_lmf_px1 as rnselect a.zp,a.qjcx,a.pass from (select t.zp,t.qjcx,t.pass,rn(select nvl(sum(s.Toqty),0) from fw_wip_trans s where s.workorder=t.WorkOrder and s.task='出站' and s.tostep='装片') zp,rn(select nvl(sum(s.Toqty),0) from fw_wip_trans s where s.workorder=t.WorkOrder and s.task='出站' and s.tostep='切筋成型') qjcx,rn(select nvl(sum(s.Toqty),0) from fw_wip_trans s where s.workorder=t.WorkOrder and s.task='出站' and s.tostep='测试') cs,rn(select sum(s.fromqty) from v_fw_wip_completion s where t.workorder=s.WorkOrder and s.task='完工' and s.step='测后检' and s.tobin ='PASS')pass,rn(select sum(s.fromqty) from v_fw_wip_completion s where t.workorder=s.WorkOrder and s.task='完工' and s.step='入库' and s.tobin ='PASS')pass,rnrn(SELECT sum(fromqty) FROM FW_Wip_trans s where s.sysid in (select sysid from v_fw_wip_completion t where tobin in rn ('N/A','BIN1','BIN2','BIN3','BIN4') ) and step='测试' and task='完工' and dates>sysdate-2),rn(SELECT sum(fromqty) FROM FW_Wip_trans s where s.sysid in (select sysid from v_fw_wip_completion t where tobin not in rn('N/A','BIN1','BIN2','BIN3','BIN4') ) and step='测试' and task='完工' and s.workorder=t.workorder),rnselect tmp_prdtype from fw_eng_prdpdd s where s.pddcode =t.prdpdd )rnfrom fw_pc_workorder t where t.prdname not like '%回%' and t.prdname not like '%退货%')
Orcale数据库SQL语言总结
DDL( Data definition language )数据定义语言:一、常用数据类型: varchar:可变字符串类型;<=4000 char:定长的字符串;<=2000 number(p,s):p表示精度,s表示小数位数,最大位数是38位 number(6)表示6位数字的 整数 number(6,2) 表示6位数字的小数,小数点后面两位,前面4位 date :日期格式(7字节),or
用数据库连接池连接orcale数据库
用数据库连接池连接orcale数据库java代码实现,通用性强
相关热词 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池 c#5.0 安装程序 c# 分页算法