我有一个包含多列的表。我使用的是SQL Server 2008。我需要根据从另一个表中获得的值,为每个raw更改表增量中某一行的值。
例如,如果我的表项是:
row1 row2 row3
kk aa 1
bb ss 2
我需要从另一个表中读取值,例如: MAX(Table_2.row9)=5,然后将该表修改为:
row1 row2 row3
kk aa 6
bb ss 7
我知道IDENTITY列我的想法是让列作为IDENTITY,然后有一个类似如下的代码:
让我们假设我有一个customer表,其中有一个customer_id列和一个has_orders列。我们还假设我有一个order表,其中有一个引用customer表中客户的customer_id列。
如果我想更新has_orders列,可以运行以下语句:
update customer set has_orders = customer_id in (select customer_id from order)
这个很管用。然而,这很慢,尽管我在两个表中都有关于customer_id的索引。是否有另一个更新语句(例如使用联接)可以更快?
我想要编写一个查询,它更新一个表中的列,并在另一个表中插入行。
像这样的东西
update
applications
set
applications.rejected = 1,
(
INSERT INTO rejection_reason (column1, column2)
VALUES (value1, value2)
)
where
ap
我有两个DB表,它们有相同的列,但它们的数据类型不同(例如:"Check“列是表1中的整数类型,而在table2中是varchar )。我试图使用BulkCopy将数据从一个表复制到另一个表。我有这样的密码:
using (SqlBulkCopy sbc = new SqlBulkCopy(connectionString, SqlBulkCopyOptions.KeepIdentity))
{
cmdSQLT = new SqlCommand("SELECT " + ColumnsNames + " FROM
如果我将表中的列声明为主键,则会为该列创建统计数据,但即使在向表中添加大量数据之后,它们也是空的。如果我在添加数据后将主键添加到able,那么将使用有意义的信息填充统计数据。为什么事先创建主键并不会产生有意义的统计数据,不管我在表中添加了多少数据?
Case 1:下面是使用主键创建表的代码:
create table t
(
col1 int primary key,
col2 int
)
go
--insert 150000 records into table
insert into t (col1, col2)
select top 150000
我被难住了。
假设我有一个表,'1',有三列,'A','B','C‘。列'C‘有一些空值。另一个表'2‘有列'A’(与表‘1’匹配)和'C',其中'C‘是完整的。
在MYSQL中如何将表“%2”中的值合并到表“%1”中?
我试过了,上上下下发誓一定能行得通:
UPDATE 1
SET 1.C = 2.C
FROM 1 JOIN 2
ON 1.A = 2.A
WHERE 1.C IS NULL;
那线索呢?提示?想法?
是否可以使用计算列规范从其他表中计算变量?
我知道如何使用计算列规范来计算表中的变量。比如
(case when [LastWorkingDate] IS NULL then round(datediff(day,[EntryDate],getdate())/(365.25),(2)) else round(datediff(day,[EntryDate],[LastWorkingDate])/(365.25),(2)) end)
但是如何从另一个表中计算一个值呢?
我想这样做,但看起来不太好.
select sum(Hour) from StaffInfo where year = 2012
我有以下情况:我需要在一个现有的MySQL表中创建一个列,该列将充当另一个表的外键。这个表目前包含每个人的多个记录,我需要一个新的列,这将是每个人唯一的。
示例:NC = new column
NC NAME SURNAME UNIT
1 john doe 12
1 john doe 15
2 peter smith 17
3 bruce twain 13
任何帮助都将不胜感激!
我可以使用CASE选择在SELECT查询(Postgres)中显示哪些列,如下所示:
SELECT CASE WHEN val = 0 THEN column_x
WHEN val = 1 THEN column_y
ELSE 0
END AS update, ...
在Postgres中执行UPDATE查询时(即选择应该更新哪些列),是否有类似的情况?我认为没有,因为我找不到这方面的任何东西,但是也许有人有一个聪明的选择(除了使用一个过程或使用一个CASE更新每个列以确定该列的值是否应该被分配到一个新值或简单地重新分配现有的值)。