我试图找出将列的替代行拆分为两列的最佳优化方法.让我通过一个例子解释一下
我有以下数据
我想要的结果集
在上面的例子中,替代行被转移到一个新列.我已经提出了一个解决方案,但如果我有数百万条记录则没有优化.
我的解决方案(未优化)
;WITH RecCtea
AS
(
SELECT *, ROW_NUMBER() OVER (ORDER BY (select 1)) rowid FROM tabA ta
)
SELECT a.cola,b.cola FROM (
(SELECT * FROM RecCtea rc WHERE rc.rowid%2 = 0) a JOIN
(SELECT * from RecCtea rc2 where rc2.rowid%2 != 0) b
on a.rowid = b.rowid+1
)
Run Code Online (Sandbox Code Playgroud)
SQLfiddle没有工作,所以这里是架构
Run Code Online (Sandbox Code Playgroud)CREATE TABLE tabA ( cola int ); INSERT tabA ( cola ) VALUES (100),(-100),(200),(-250),(300),(-350),(-400),(NULL)
我正在尝试为客户创建一个解决方案。客户经营一所大学,想要一个系统,他们可以使用该系统向家长/监护人发送包含分数/评分的批量信件。这些信件必须由大学院长(单一用户)签署。
用户(Dean)是否必须进入 DocuSign 并单独签署每封信,还是有办法自动完成?我计划为此使用带有 C# 的 SOAP API。
我出席了一次面试,根据我的说法很顺利,但面试官没有这样做.他问了几个我正确回答的问题和两个实际问题.其中一个与数据库有关.
问题是这样的
一所学校由几个班级组成,每个班级学习由几位教师教授的不同科目.你必须设计数据库,以便人们可以知道哪个老师教什么课程?
它看起来很简单,我设计了它.
就像是:
老师表
| ID | Teacher_Name |
-----------------------------
| 1 | Ankit |
| 2 | Jack |
Run Code Online (Sandbox Code Playgroud)
班级表
| ID | class_Name |
-----------------------------
| 1 | First |
| 2 | Second |
Run Code Online (Sandbox Code Playgroud)
主题表
| ID | subject_Name |
-----------------------------
| 1 | English |
| 2 | stats |
Run Code Online (Sandbox Code Playgroud)
和一个主表,将它们全部组合起来,并知道老师教什么课程的主题
主表
| ID | Teacher_id | class_id | subject_id |
----------------------------------------------------
| 1 | 1 | 1 | 1 |
| 2 | …
Run Code Online (Sandbox Code Playgroud) 我已经为解决方案敲了近14个小时,仍然无法找到解决方案.我会尽力让问题变得清晰.请帮帮我
我有2张桌子
表的结构就像
id - int
dateofissue - datetime
金额 - 浮动
id - int
日期 - 日期时间
金额 - 浮动
现在我想要的是制作一份月度报告,告诉日期明智的现金总额和主表
报告的结构就像
日期------------------掌握金额---------------现金金额
2/3/2012 -------------- 2000 ------------------------ 1000
3/3/2102 -------------- 4000 ------------------------ 200
...
....
mas表中的总金额和现金表中的金额总和根据mas表的日期和现金表中的日期进行分组.
我正在使用像SQL一样的SQL查询
SELECT sum(cash.amount) as CashAmount, sum ( mas.amount) AS DraftAmount, mas.dateofissue
FROM mas FULL OUTER JOIN
cash ON cash.date = mas.dateofissue
where mas.dateofissue >= '2012-03-01 00:00:00.000' and mas.dateofissue <= '2012-03-31 00:00:00.000' and
cash.date >= '2012-03-01 00:00:00.000' and cash.date <= …
Run Code Online (Sandbox Code Playgroud) 我在设计我的应用程序数据库时遇到了一个问题。我在网上搜索了类似的结构,但找不到任何。那么问题来了:
我有一个用搜索页面和数据网格设计的页面。请看下面的屏幕截图:
我有一个名为contact的表,它与身份及其子类型有关系。
Identity 类型目前仅包含两个值,但将来可能会增加(停车、生活区),根据下拉列表中选择的项目,搜索字段会更改,网格视图也会更改(请参阅标题)。The first image shows that when identity type parking is selected then the user can filter the results by section, lane, row and the parking number.
如果我们更改身份类型,搜索字段将再次更改,行字段在两种身份类型中都相同。
用户应该能够在数据库中保存从网格中为联系人(在联系人表中)选择的详细信息。
我很困惑我应该如何设计一个数据库,该数据库将显示带有身份字段的网格,而这些身份可以保存到与联系人相关的数据库中。
这是我想出的东西
我仍然不清楚所选行将如何保存在数据库中。
对此的任何帮助将不胜感激。
我正在处理一个未规范化的数据库,由于我没有权限,因此无法规范化.问题是
我有两张桌子
表的结构就像
Gl_Account(空表或一些旧数据)
loc | gl_acct | HMISTOTAL
-------------------------------
| |
-------------------------------
Run Code Online (Sandbox Code Playgroud)
试算平衡
loc | g1101 | g1102 | g1103
----------------------------------------
1400 | 20 | 30 | 0
----------------------------------------
1500 | 10 | 0 | 40
----------------------------------------
Run Code Online (Sandbox Code Playgroud)
现在我想做的是
取不在记录Gl_Account表从试算与各个GL_acct数表,其中各下量gXXXX(在试算)不为零
让我用一个例子解释一下.记住上面的表我想填写GL_Account表
GL_Account
loc | gl_acct | HMISTOTAL
---------------------------------------
1400 | 1101 | 20
---------------------------------------
1400 | 1102 | 30
---------------------------------------
1500 | 1101 | 10
---------------------------------------
1500 | 1103 | 40
--------------------------------------- …
Run Code Online (Sandbox Code Playgroud)