Java ngk介于两者之间?我想让经理们以k为名,这里有几个问题。首先,是时候开始使用ANSI-92样式的联接了……它们已经存在了25年多了。其次,为什么不使用存储过程而不是传递查询?维护和调试起来容易多了。@SeanLange感谢这篇文章,内容非常丰富。我使用旧
Java ngk介于两者之间?我想让经理们以k为名,这里有几个问题。首先,是时候开始使用ANSI-92样式的联接了……它们已经存在了25年多了。其次,为什么不使用存储过程而不是传递查询?维护和调试起来容易多了。@SeanLange感谢这篇文章,内容非常丰富。我使用旧,java,sql,sql-server,hibernate,Java,Sql,Sql Server,Hibernate,ngk介于两者之间?我想让经理们以k为名,这里有几个问题。首先,是时候开始使用ANSI-92样式的联接了……它们已经存在了25年多了。其次,为什么不使用存储过程而不是传递查询?维护和调试起来容易多了。@SeanLange感谢这篇文章,内容非常丰富。我使用旧样式只是因为它是一个简单的查询,我没有想到会有这么多问题。关于为什么不使用它们的过程,说来话长,但我将尝试这两种建议,以替换“旧式连接”为什么wine_styles表甚至在查询中?它根本没有被引用。 select distinct p.id,
ng
k
介于两者之间?我想让经理们以k
为名,这里有几个问题。首先,是时候开始使用ANSI-92样式的联接了……它们已经存在了25年多了。其次,为什么不使用存储过程而不是传递查询?维护和调试起来容易多了。@SeanLange感谢这篇文章,内容非常丰富。我使用旧样式只是因为它是一个简单的查询,我没有想到会有这么多问题。关于为什么不使用它们的过程,说来话长,但我将尝试这两种建议,以替换“旧式连接”为什么wine_styles表甚至在查询中?它根本没有被引用。
select distinct p.id, p.name, m.name
from test001.npd.projects p,
test001.npd.customer,
test001.npd.manager w
where lower(p.name) like '%%' and lower(p.customer) like '%%' and lower(m.name) like '%k%'
IF (OBJECT_ID('npd.searching') IS NOT NULL)
DROP PROCEDURE npd.searching
USE test001;
GO
CREATE PROCEDURE npd.searching
@project nvarchar(50),
@customer nvarchar(50),
@manager nvarchar(50),
@wine nvarchar(50)
AS
SET NOCOUNT ON;
select p.id, p.name, m.name from test001.npd.projects p
inner join test001.npd.managers m on p.manager_id = m.id
inner join test001.npd.wine_styles w on p.wine_style_id = w.id
where
lower(p.name) like '%' + @project + '%' and
lower(p.customer) like '%' + @customer + '%' and
lower(m.name) like '%' + @manager + '%' and
lower(w.name) like '%' + @wine + '%';
GO