Linq 语句换成 sql语句,求高手帮忙

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linq 语句换成 sql语句,求高手帮忙相关的知识,希望对你有一定的参考价值。

select a.id+Substring(a.name,1,9)from student a, score b
where a.createdate >=2011-07-01 and a.id = b.sid and Substring(a.name,1,9)= b.sname
写错了 是sql 语句换成Linq 语句

var query=(from a in student join
b in score on a.id == b.sid
where a.createdate >=2011-07-01 && Substring(a.name,1,9)== b.sname
select new a.id+Substring(a.name,1,9)).ToList();
参考技术A sql 吗?没什么需要改的啊

select a.id+Substring(a.name,1,9)
from student a, score b
where a.createdate >='2011-07-01'
and a.id = b.sid and Substring(a.name,1,9)= b.sname追问

写错了 是sql 语句换成Linq 语句

追答

Linq 不会,呵呵,

参考技术B var query=from a in student join
b in score on a.id == b.sid
&& a.createdate >=2011-07-01 && Substring(a.name,1,9)== b.sname

select a.id+Substring(a.name,1,9);追问

这么写查到的结果和sql 语句查到的结果不一样

追答

var query=from a in student join
b in score on a.id == b.sid
where a.createdate >=2011-07-01 && Substring(a.name,1,9)== b.sname
select a.id+Substring(a.name,1,9);

参考技术C 什么数据库?追问

sql Server 2008

追答

不好意思 Linq 我也不会

oracle带参数的存储过程,一直提示sql无效sql语句。求高手指点

create or replace procedure cpgd_insert
(
sj in varchar2;
)
as
declare sl number(10);
begin
select count(1) into sl from dba_views where view_name = 'jbftjl' and OWNER='WINE';
if sl=1 then
insert into dg_daybb (epname,gangzhong,ph,guige,rbcp,ybcp,riqi) select '纵剪机' as epname ,gangzhong,ph,guige, rbcp,ybcp,to_date(sj,'yyyy-mm-dd') as riqi from jbftjl;
end if;
end;

execute cpgd_insert ('2012-06-08');

参考技术A 对,确实是declare要删除,你的as已经代表要申明一个变量了
create or replace procedure cpgd_insert(sj in varchar2) as
sl number(10);
begin
select count(1)
into sl
from dba_views
where view_name = 'jbftjl'
and OWNER = 'WINE';
if sl = 1 then
insert into dg_daybb
(epname, gangzhong, ph, guige, rbcp, ybcp, riqi)
select '纵剪机' as epname,
gangzhong,
ph,
guige,
rbcp,
ybcp,
to_date(sj, 'yyyy-mm-dd') as riqi
from jbftjl;
end if;
end;
参考技术B begin
cpgd_insert ('2012-06-08');
end;

还有个问题,你insert后没提交,所以插入不到表里
insert into 后加一句
commit;

在oracle里,insert update delete后必须提交,否则插不进数据不说 ,还会造成锁表,请牢记追问

还是提示无效sql

追答

你是在执行create 过程中报错,还是在执行
begin
cpgd_insert ('2012-06-08');
end;

的时候报错?有截图没有?

追问

创建过程的时候没报错,执行的时候就

追答

你是用什么执行的?
sqlplus?pl/sql?还是其他?

追问

plqsl

追答

这样,你在左边列表找到procedures
点开,找到你的这个cpgd_insert
然后右键,点测试,下边有个输入参数的地方
你看看能跑成功不

或者在一个sql窗口执行我那句

百度hi里加你了,我给你调吧

本回答被提问者采纳
参考技术C declare 不需要追问

刚开始没加也一样

参考技术D 第一,你sj in varchar2 后面不应该有分号
第二,不应该有declare这个关键字

以上是关于Linq 语句换成 sql语句,求高手帮忙的主要内容,如果未能解决你的问题,请参考以下文章

求高手帮忙sql写法:树节点放一个表中,怎么用一条语句查询一个节点及对应的所有父节点信息。

刚学数据库,遇到一道关于数据库sql语句的题目,实在不会,请高手帮忙解答一下,谢谢!

怎么把下面的的sql语句查询出来的结果插入到一张新表中去 求大神帮忙

oracle sql语句获取前两条数据

请高手帮忙写个MYSQL的替换语句,谢谢了。

求帮忙一个java的sql语句拼接,条件是 in 包括!