AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-2695

adopilot's questions

Martin Hope
adopilot
Asked: 2018-05-08 10:44:33 +0800 CST

针对硬编码字符串的参数评估始终返回 false

  • 0

在 Mysql workbench 中,我试图查询 whit 参数。

但是当我尝试将参数与静态字符串进行比较时,我有奇怪的行为。

为什么我没有像这样从查询中得到任何行?当我运行查询时,我确实得到了标题行,但我没有得到任何行。我确定表调用中有行。如果这太明显,请原谅我,但我在 MsSql 中做了一百万次没有问题。

set @kontakt ='fo' ;
select
*
from calls
where (@kontakt = 'fo');
mysql parameter
  • 1 个回答
  • 27 Views
Martin Hope
adopilot
Asked: 2018-04-24 04:51:23 +0800 CST

在同一列上查找具有多个索引的表

  • 2

我在搭建 PostgreSQL DB 时遇到问题,因为 npgsql 不能很好地处理同一列上有两个索引的表。这是我在 github 上的项目的链接。

我正在尝试查找这些索引/表,以便我可以将它们从我的脚手架命令中排除。

例子:

CREATE TABLE public.altreproc (
  apcod integer NOT NULL,
  aptip character(3),
  apcam character(3),
  CONSTRAINT altreproc_pkey PRIMARY KEY (apcod)
);

CREATE INDEX ialtreproc1
  ON public.altreproc
  USING btree
  (aptip COLLATE pg_catalog."default");

CREATE INDEX ialtreproc2
  ON public.altreproc
  USING btree
  (apcam COLLATE pg_catalog."default");

CREATE INDEX ialtreproc3
  ON public.altreproc
  USING btree
  (aptip COLLATE pg_catalog."default" DESC);

我的问题是当一个表有 2 个不同的索引具有相同的列(一个ASC和一个DESC)时;我试图在我试图搭建的数据库中查询这样的表/索引。

我的目标是找到在同一列上包含多个索引的表。

postgresql index
  • 1 个回答
  • 1550 Views
Martin Hope
adopilot
Asked: 2017-05-13 10:08:42 +0800 CST

没有聚合和 group by 子句的 MySql 列

  • 2

由于我来自 MSSQL 世界,我很困惑,在查询中发生了什么,你有 group by 子句和 select 中的其他列不通过聚合函数。

当 MySql 执行这样的查询时,我感到震惊

select * from myTable
group by columnThatIsNotPk

或者像这样摆弄 http://sqlfiddle.com/#!9/b30bf5/1

我的问题是:

  1. 是否有解释我将为 group by 子句中不存在的列获取哪些数据?
  2. 可以使用这样的查询吗?
  3. 我会因为这样的查询而失去或获得性能吗?
  4. MySql 是否像 ACCESS 中的 JetEngine 那样实现 First 和 Last 聚合,不幸的是缺少 MSSQL 引擎中的功能?
mysql group-by
  • 1 个回答
  • 161 Views
Martin Hope
adopilot
Asked: 2015-05-05 06:58:29 +0800 CST

如何为我的 SSAS Cube 手动设置代码页和排序规则?

  • 1

当我尝试处理我的 SSAS2012 Olap Cube 时,我得到了很多这样的错误

Errors in the OLAP storage engine:
A duplicate attribute key has been found when processing: Table: 'dbo_ART'
,Column: 'NAZIV'
,Value: 'ARMATURA ZA KERAMIĆKI VODOKOTLIĆ'. 
The attribute is 'Art Naziv'.
Errors in the OLAP storage engine: The record was skipped because the attribute key is a duplicate.
Attribute: Art Naziv of Dimension: ART from Database: robot, Record: 2451.

当我调查此错误时,我发现在我的事务数据库表 ART 中存在两个完全不同的行,其值为 NAZIV ='ARMATURA ZA KERAMIĆKI VODOKOTLIĆ'和'Č' insead 放在那个地方是字母'C'。

如果我做

select naziv
from art
group by naziv
having count(*)>1

我没有得到任何重复的行。
因为一些事务数据库如何知道字母'Č','Ć','C'之间的区别。
但是 OLAP 多维数据集在处理 Dimension ART 时将所有这些字母读取为“C”并获取重复键。
我的事务数据库位于 SQL 2012 R2 标准服务器上,排序规则 =Croatian_CI_AS 服务器通常设置为 Latin1_General_CI_AI。我的 SSAS 2012 Enterprise 服务器将 Windows 排序规则设置为 Latin1_General 并且所有敏感都未选中。

我应该如何设置 SSAS 服务器的语言设置以避免此错误。那是“口音敏感”设置。或者我需要将我的 Windows 排序规则更改为其他内容?

SSAS 语言设置

ssas collation
  • 1 个回答
  • 1537 Views
Martin Hope
adopilot
Asked: 2014-12-04 09:16:21 +0800 CST

SQL Server:如何创建只能从特定主机名或 IP 地址访问的用户

  • 8

我有一个我依赖的愚蠢应用程序,里面有硬编码的连接字符串。

为了提高我的 SQL Server 的安全性,我想让 SQL 用户与一个硬编码的内部应用程序相同,但我希望允许该用户只能从某个主机(IP 地址)使用 SQL Server。

sql-server sql-server-2012
  • 2 个回答
  • 9154 Views
Martin Hope
adopilot
Asked: 2013-09-13 07:13:07 +0800 CST

帮助我在 SQL 和 TopSpeed Clarion 表之间映射列类型

  • 2

我的任务是在 SQL Server 2012 下将旧的 Clarion App 转换为新的。

我只有 200 个带有 TPS 扩展名的表,我只能通过名为 TopScan 的程序打开它们。(没有 odbc,没有技术文档,没有支持)。

我正在制作一个将数据提取到 SQL 的 C# 程序。

我可以在这样的文本中看到的数据结构

                   FILE,DRIVER('TOPSPEED'),NAME('C:\bIRA2013\BIRA_ARHIMED\PART.TPS')
PART:K_SIFPAR        KEY(+PART:SIFPAR),NOCASE,PRIMARY
PART:K_ZIRO          KEY(+PART:ZIRO),DUP,NOCASE
PART:K_NAZIV1        KEY(+PART:NAZIV1),DUP,NOCASE
PART:K_GRUPA         KEY(+PART:GRUPA),DUP,NOCASE
PART:K_PORBR         KEY(+PART:PORBR),DUP,NOCASE
PART:K_KOMER_SIFPAR  KEY(+PART:KOMER,+PART:SIFPAR),DUP,NOCASE
PART:K_BANKA_SIFPAR  KEY(+PART:BANKA,+PART:SIFPAR),DUP,NOCASE
PART:K_GRAD_SIFPAR   KEY(+PART:GRAD,+PART:SIFPAR),DUP,NOCASE
PART:K_NACPL_SIFPAR  KEY(+PART:NACPL,+PART:SIFPAR),DUP,NOCASE
PART:K_NACPLD_SIFPAR KEY(+PART:NACPLD,+PART:SIFPAR),DUP,NOCASE
PART:OPIS            MEMO(2000)
RECORD               RECORD
PART:SIFPAR            STRING(10)
PART:ZIRO              STRING(20)
PART:PORBR             STRING(13)
PART:PORBRBIH          STRING(10)
PART:NAZIV1            STRING(40)
PART:NAZIV2            STRING(40)
PART:GRUPA             STRING(10)
PART:KUP               STRING(2)
PART:DOB               STRING(2)
PART:ADRESA            STRING(30)
PART:GRAD              STRING(25)
PART:PBROJ             STRING(5)
PART:TEL1              STRING(15)
PART:TEL2              STRING(15)
PART:FAX               STRING(15)
PART:OSOBA             STRING(30)
PART:RABAT             DECIMAL(5,2)
PART:RABATD            DECIMAL(5,2)
PART:CASSA             DECIMAL(5,2)
PART:CASSAD            DECIMAL(5,2)
PART:NACPL             STRING(2)
PART:NACPLD            STRING(2)
PART:KOEF              DECIMAL(5,4)
PART:DVO               LONG
PART:BANKA             STRING(6)
PART:VEZDOK            STRING(10)
PART:IZJAVA            STRING(10)
PART:KOMER             STRING(3)
PART:EMAIL             STRING(40)
PART:WWW               STRING(60)
PART:ID                STRING(2)
PART:D                 LONG
                     END
                   END

我认为 RECORD 和 END 之间的 ROWS 代表表的结构。当我浏览所有表格时,我发现列表中的以下数据类型

STRING(10) --many sizes (10,20,100,200)
CSTRING(256) --many sizes (2000,3000)
LONG  
DECIMAL(7,4) 
BYTE 
REAL
GROUP

我应该如何将这些类型映射到 SQL Server 类型?

对我DECIMAL来说只是直接命中,但我什至对此都不太放心。

为什么我这么困惑是因为我找不到对应的类型DATE。

子问题是,Clarion 如何在表中保存日期?

sql-server datatypes
  • 3 个回答
  • 1226 Views
Martin Hope
adopilot
Asked: 2013-07-05 01:00:29 +0800 CST

如何设计索引以加快删除速度

  • 5

我想加快以下代码

delete from ssn_sdo
where       
           (art_id=@art_id and skl_id=@skl_id and @level=0 )
        or (art_id=@art_id and skl_id=@skl_id and @level=1 and tip=@tip)
        or (art_id=@art_id and skl_id=@skl_id and doc_id = @doc_id)

我的服务器是 MS SQL-Server 2005。

art_id,skl_id和doc_id是整数,而 tip 是varchar(10)类型。

我想在ssn_sdo表上创建一个索引,这样删除速度会更快。
我正在考虑做的是制作三个索引,每个索引对应每种情况:

doc_id (ASC), art_id (ASC), skl_id (ASC)  
skl_id (ASC), art_id (ASC), tip (ASC)  
skl_id (ASC), art_id (ASC),  

或者是否有更好的方法来制作一个包含所有三种情况的索引。
我对索引很小心,因为我不想减慢在此表中的插入速度。

sql-server database-design
  • 2 个回答
  • 417 Views
Martin Hope
adopilot
Asked: 2013-06-16 08:06:44 +0800 CST

我如何创建校验和以验证表上的 int 字符串对没有变化

  • 0

商业案例是。
1) 用户在纸上打印文档
2) 用户将打印的纸带给老板,老板在纸上唱歌
3) 然后用户去管理员那里对该纸进行数字签名。

我的任务是帮助管理员以简单的方式确保纸质文档和数字文档之间没有变化。

文档写在三个sql表中。
第一个表的完整性是字符串+日期
第二个表的完整性是组合 int+float
第三个表的完整性是 int+string。

这些表中还有其他列,可以在Boss sing document后自由更新,不需要Boss sing。

我的想法是从这三个表/组合中生成某种 SHA 或 CheckSum。在文档没有更改的情况下,这将是相同的。
我不希望我的校验和是无限的或太长,以便管理员可以轻松检查是否违反了我的自定义完整性。

我开始考虑我可以为 int - float make sum(int * folat)
对于每个字母的字符串我可以使用 ASCII 数字并做 sum(int * (ascii(S)+ascii(T)+ascii(I)+ascii (N)+ascii(G)))。
对于 date - int same make int * (date to int) 之后我可以将这三个数字相加(求和)并转换为十六进制。但也许我的数字将超出范围或太大而无法通过人眼进行比较。

我如何缩小超大数字以方便人类阅读和比较?有没有另一种方法可以确保我的受保护列在一段时间内没有变化?

我正在使用 MSSQL2005/8 服务器。我的报告引擎大部分是 rime SqlReportingServices,但我更喜欢在数据库级别而不是报告级别执行此登录。

我不想锁定文档的编辑,因为有时 Boss 会要求用户在签名前返回并更正文档。
我也不能逼老板拿鼠标在手。

sql-server database-design
  • 1 个回答
  • 581 Views
Martin Hope
adopilot
Asked: 2013-05-07 23:18:53 +0800 CST

@date 和 getdate() 的性能有区别吗?

  • 6

通常我getdate()在 where 子句中使用该函数来及时返回。就像是:

 DOC.DATUM >= DATEADD(DD,-1*SSN_SDO.DANA_ZA_POVRAT,GETDATE()) 

如果我首先声明一个日期参数并在我的查询中使用它,SQL Server 2008R2 会执行更快的查询吗?

declare @dateNow date = getdate()
...
where
     DOC.DATUM >= DATEADD(DD,-1*SSN_SDO.DANA_ZA_POVRAT,@dateNow ) 
sql-server sql-server-2008
  • 2 个回答
  • 7241 Views
Martin Hope
adopilot
Asked: 2013-04-27 06:05:48 +0800 CST

处理这么多 isnull() 情况的更简单方法

  • 1

有什么好的方法可以避免isnull()在存储过程中多次编写函数吗?

我有一个使用该isnull()函数几乎 30 次的存储过程,我认为我缺少一个概念,但在我找到更好的方法来获取我的数据之前,我会喜欢从这么多isnull()函数中清理我的代码。

我可以将 SQL Server 2008 R2 设置为使用空值作为浮点 0 吗?isnull()如果没有数据,我的大部分只是添加零 0 值,这样我就可以进行数学运算。

编辑:我并不懒惰,我只是想清理我的代码并避免选择部分看起来像这样

select  
   vrsta.NAZIV
   ,isnull(sum(prod.prod_mpci),0) as prod_MPCI
   ,isnull(sum(isnull(mal_MPCI,0) + (vel_kol * isnull(mal_MPC,vel_VPC))),0) as lager_mpci
   ,isnull(sum(vel_NCI),0)+isnulL(sum(mal_NCI),0) as lager_nci
   ,sum(   case 
            when isnull(vel_KOL,0)+isnull(mal_KOL,0) > isnull(prod.prod_kol,0) and isnull(dzn.dzn,'2010-01-01') < @dzu
                    then ((isnull(vel_KOL,0)+isnull(mal_KOL,0))-isnull(prod.prod_kol,0)) * isnull(mal_MPC,vel_VPC)
                    else 0 end
            ) as visak_MPC
   ,sum(   case 
            when isnull(vel_KOL,0)+isnull(mal_KOL,0) > isnull(prod.prod_kol,0) and isnull(dzn.dzn,'2010-01-01') < @dzu
                    then ((isnull(vel_KOL,0)+isnull(mal_KOL,0))-isnull(prod.prod_kol,0)) * isnull(mal_NC,vel_NC)
                    else 0 end
            ) as visak_MPC
    ,sum(   case 
            when isnull(vel_KOL,0)+isnull(mal_KOL,0) <= isnull(prod.prod_kol,0) 
                    then ((isnull(vel_KOL,0)+isnull(mal_KOL,0))-isnull(prod.prod_kol,0)) * isnull(mal_MPC,vel_VPC)
                    else 0 end
            ) as manjak_MPC

    ,sum(   case 
            when isnull(vel_KOL,0)+isnull(mal_KOL,0) <= isnull(prod.prod_kol,0) 
                    then ((isnull(vel_KOL,0)+isnull(mal_KOL,0))-isnull(prod.prod_kol,0)) * isnull(mal_NC,vel_NC)
                    else 0 end
            ) as manjak_NC
sql-server sql-server-2008
  • 3 个回答
  • 6834 Views
Martin Hope
adopilot
Asked: 2013-04-11 13:52:51 +0800 CST

如何处理更新或插入情况

  • 1

有时我的存储过程看起来像

create procedure handle_data 
    @fk int,
    @value varchar(10)
as
begin
    if exists (select * from my_table where id = @fk)
    begin
        update my_table
        set value = @value
        where id = @fk
    end 
    else 
    begin
        insert into my_table (fk, value)
            select @fk, @value
    end 
end 

调用此存储过程的应用程序设计可能存在错误。
我是否应该避免制作执行相同存储过程和插入新数据以及更新旧数据的方法的应用程序?

有没有更好的方法来以一种方法实现更新或插入数据?

我正在使用 SQL Server 2005 / 2008。

sql-server-2008 database-design
  • 3 个回答
  • 238 Views
Martin Hope
adopilot
Asked: 2013-02-20 14:34:00 +0800 CST

全文搜索和索引列之间获取数据的性能是否存在差异

  • 2

在 SQL Server 2008 R2 中,我有一个看起来像的查询

create stored procedure give_me_art @filter varchar(15),@skl_id int
begin
select 
  id,naziv,sifra,isnull(lager.kolicina,0) as lager
from art 
left outer join lager on art.id=lager.art_id and lager.skl_id=@skl_id
where sifra like '%'+@filter+'%' or naziv like '%'+@filter+'
end

我在列 naziv 和列 sifra 上有一个索引。

我正在考虑将此查询更改为全文搜索。表艺术有大约 150K 条记录,我的主要目标是从 SQL Server 获得更快的响应,因为这种查询在日常工作中很常见。

如果我在这两列上创建全文索引并重新设计我的查询以使用全文索引,这个查询的性能会发生什么变化?

sql-server performance
  • 1 个回答
  • 175 Views
Martin Hope
adopilot
Asked: 2013-02-15 07:00:27 +0800 CST

Azure 中数据库的定价

  • 4

我对 Azure 中数据的定价有点困惑。我在一个MS 博客上发现 50GB 的价格是 125 美元。

对我来说缺少的部分是,如果我只需要云中的数据库:

  • 我只支付 125 美元吗?
  • 或者我必须单独支付一台服务器运行所需的 RAM、存储、处理器和其他部件?
  • 关于 Azure 数据库性能的故事是什么?
  • 是否所有数据库都具有相同的可操作资源?
azure-sql-database
  • 1 个回答
  • 176 Views
Martin Hope
adopilot
Asked: 2013-02-13 15:29:04 +0800 CST

SQL Server 2005 和 Azure 数据库之间的复制

  • 4

是否可以在 SQL Server 2005 和 SQL Azure 数据库之间设置过渡复制?

我的服务器快要报废了,我宁愿迁移到云基础架构,也不愿购买新硬件。

我一直无法找到任何说明 SQL Azure 数据同步是否可以与 SQL Server 复制共存的文档。

sql-server sql-server-2005
  • 2 个回答
  • 1380 Views
Martin Hope
adopilot
Asked: 2013-01-17 06:12:13 +0800 CST

在 SQL Server 中使用范围按百分比按值查找最高值

  • 3

按百分比范围对记录进行分组的更简单方法是什么。

这是我试图完成的

Select top percents between 50 and 75 * from myTable order by PKI

这是我这样做的方法,但我觉得云要容易得多

select 
    top(25) percent 
     *
from myTable
where id not in (
            select 
                top(25) percent 
                 ID
            from myTable
            order by PKI
            )
order by PKI

这应该是我表格的前 50-75%?

有没有更好(更好)的方法来做到这一点。

sql-server sql-server-2008-r2
  • 2 个回答
  • 1143 Views
Martin Hope
adopilot
Asked: 2012-11-14 07:32:26 +0800 CST

根据 SQL Server 2005 行内的日期限制要更新或删除的记录

  • 4

我在两个 SQL Server 之间进行事务复制。出于测试目的,我删除了订阅者的许多记录,这些记录仍然存在于发布者。

我现在知道,如果有人在发布者处更新或删除了一些记录,而这些记录在我的订阅者上不存在,那么我的复制就会崩溃。

我知道我也可以在分发服务器上过滤数据,但这意味着要重新初始化我的订阅者,这意味着要通过慢速链接传输近 40GB 的数据。

因此,在我测试订阅的数据库时,我希望限制用户只能在发布者端更新或删除记录。我的源表有一个日期字段,我想根据日期限制更新或删除。

为此使用触发器或约束更好吗?

如何尽可能避免记录锁定?

sql-server sql-server-2005
  • 1 个回答
  • 1172 Views
Martin Hope
adopilot
Asked: 2012-05-09 08:32:53 +0800 CST

使用更新方法根据时间戳查找最后一个(最大值)值

  • 1

我的任务是根据时间戳(日期时间)值的最后一个(最大值)查找整数值。
因为它是如此复杂的查询,所以我正在考虑这种方式来找到类似这样的最后一个值

伪代码:

update my_table
    set value=last_value
from my_table 
    inner join (
                 select *
                    from (
                    select top(100) percent
                        from 
                            ( select ts,last_value,pk_v from tb1
                                    union all
                              select ts,last_value,pk_v from tb2
                              ..
                              ) as temp
                              order by ts 
                              ) as temp_order
                            ) as temp on my_table.pk_v=temp.pk_v

这个想法是制作按时间戳排序的子查询,然后更新表。
在这种情况下,有时会在子查询中为一个 pk_val(primary_key 值)提供更多值。

对我来说,现在看起来这是不可能的,我正在考虑在 CURSOR 中进行更新。但在我继续之前,我很想听听你选择这个。

更清晰的问题是:在一个事务(选择)SQL 中更新如何工作需要两次更新同一行?

*编辑:1 * 这是带有数据的示例

create table #Table_To_update
(pk int not null,last_value int)

insert into #Table_To_update
select 1,null
union all
select 2,null
union all
select 3,null

create table #table_as_sub_query
(fk int, value int ,ts datetime)


insert into #table_as_sub_query
select 1,5,'2012-01-01'
union all 
select 1,6,'2012-03-01'
union all 
select 1,2,'2012-04-01'
union all
select 2,7,'2012-02-01'
union all 
select 2,8,'2012-02-05'
union all 
select 2,6,'2012-04-01'
union all
select 3,0,'2012-01-01'
union all 
select 3,9,'2012-05-05'
union all 
select 3,12,'2012-01-01'



/*--This Way I want to update new table with last values --*/
update #Table_To_update
set last_value=table2.value
from #Table_To_update table1
inner join (select 
                top(100) percent
                *
            from #table_as_sub_query
                order by ts desc
                ) as table2 on table1.pk=table2.fk
sql-server sql-server-2005
  • 1 个回答
  • 5520 Views
Martin Hope
adopilot
Asked: 2012-03-13 00:23:50 +0800 CST

按月-年关键面值分组存储日期的最佳实践

  • 6

我正在制作一项需要保存按年月组合分组和计算的数据的服务。我知道如何计算数据并将其放在新表上。但是我很困惑应该使用哪种数据类型来存储月 - 年值。这是我考虑过的。

  1. 两个整数列,一个是一年,另一个是一个月(易于理解且易于操作(使用此表的任何人都可以轻松使用范围和顺序),但我认为这将比其他解决方案占用更多空间。
  2. 使用日期字段,并始终为整个月存储一个日期。(很难向用户解释它是如何工作的以及如何创建 WHERE 子句)
  3. 一个 varchar(7) 列并在那里放置 2012-02,2013-01 之类的刺痛。对我来说,这很容易理解,但很难操作。

我应该选哪个?还是有其他解决方案。有人可以根据性能建议哪种方式是好的解决方案,因为大多数查询将使用解决方案中的数据范围,而我的新表将有大约 2-5 百万条记录。

sql-server-2008 database-design
  • 4 个回答
  • 9622 Views
Martin Hope
adopilot
Asked: 2012-02-24 08:34:06 +0800 CST

表值参数作为存储过程的输出参数

  • 41

表值参数是否可以用作存储过程的输出参数?

这是我想在代码中做的事情

/*First I create MY type */
CREATE TYPE typ_test AS TABLE 
(
     id int not null
    ,name varchar(50) not null
    ,value varchar(50) not null
    PRIMARY KEY (id)
)
GO


--Now I want to create stored procedu whic is going to send output type I created, 
--But it looks like it is inpossible, at least in SQL2008
create  PROCEDURE [dbo].sp_test
         @od datetime 
        ,@do datetime 
        ,@poruka varchar(Max) output
        ,@iznos money output 
        ,@racun_stavke  dbo.typ_test   READONLY --Can I Change READONLY with OUTPUT ?
AS
BEGIN
    SET NOCOUNT ON;

    /*FILL MY OUTPUT PARAMS AS I LIKE */


    end
sql-server-2008 stored-procedures
  • 4 个回答
  • 77945 Views
Martin Hope
adopilot
Asked: 2012-01-29 04:18:37 +0800 CST

帮助我更好地设计查询,以便获得更高的性能

  • 0

我需要在数据库中找到所谓的第一个条目,以查找有关其合作伙伴的项目。我写了查询,它给了我正确的结果,但性能很差。
我怀疑我错过了受孕,因此这个查询可以写得更好。所以我请求你帮我重新设计这个查询以获得更好的性能。
我运行的数据库系统是Sql Server 2008

declare @od_datuma datetime
declare @do_datuma datetime

set @od_datuma='2011-12-01'
set @do_datuma='2011-12-31'


select 
doc.PAR_ID
,sdo.art_id
,MIN(doc.id) as doc_id
from 
dokumenti
inner join DOC on dokumenti.tip=DOC.TIP
inner join SDO on DOC.ID=SDO.DOC_ID
left  outer join (
    select par_id,art_id from dokumenti
            inner join DOC on dokumenti.tip=DOC.TIP
            inner join SDO on DOC.ID=SDO.DOC_ID     
            where   dokumenti.NABAVA =1 and
                    dokumenti.KOL_UL=1 and
                    DOC.DATUM<@od_datuma
                )  as stari_uazi on DOC.PAR_ID=stari_uazi.PAR_ID and SDO.ART_ID=stari_uazi.ART_ID
where 
dokumenti.NABAVA =1 and
dokumenti.KOL_UL=1 and
stari_uazi.ART_ID is null and 
doc.datum between @od_datuma and @do_datuma
group by doc.PAR_ID,sdo.art_id
sql-server database-design
  • 1 个回答
  • 150 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve