选择查询合并时出错

时间:2015-06-26 06:36:03

标签: sql sql-server

我试图在select查询的一列中合并三个值,除getdate函数以外,查询工作正常,但是当我写getdate()时,它会给出错误:

  

转换varchar值时转换失败' FA / 118,'数据   输入int

以下是引发错误的查询:

select top 1 ([Casetype] +'/'+ CaseNo +','+ YEAR(GETDATE()) )as CaseNo
from tbl_RecordRequisition
where Casetype='FA'
order by id desc

请帮忙!

3 个答案:

答案 0 :(得分:3)

你必须将YEAR(GETDATE())的值转换为字符串:

select top 1 ([Casetype] +'/'+ CaseNo +','+ CONVERT(varchar,YEAR(GETDATE())) )as CaseNo from tbl_RecordRequisition where Casetype='FA' order by id desc

否则sql-server会尝试将表达式([Casetype] +'/'+ CaseNo +','的值转换为int。

答案 1 :(得分:2)

您需要连结<?php if (isset($_GET['id'])) { echo $_GET['id']; } ?>,但varchar返回YEAR()

int

答案 2 :(得分:1)

尝试此查询

array.push([column data]);