sql 多列插入数据

sql 多列插入数据,第1张

类似这样做吧

create table #1 (Time datetime)--select from #1

declare @i int,@StartTime datetime

select @i = 0,

@StartTime = '2010-3-17 8:30:00'

while @i < 5

begin insert into #1 values(dateadd(dd,@i,@StartTime))

set @i=@i+1

end

select from #1

drop table #1

这个涉及到数据库范式和反范式的问题,要清楚你们的具体需求才行,但是一般来说,反范式只有在数据量比较大的时候才会考虑,我不知道你们的每个工站有多少数据量,如果数据量不大的话,一般按第三范式去设计数据库就行了,也就是方案二。

--测试环境mssql2008

--这就是行列转换

Create TAble T

(

日期 date,

时间 time,

设备 Varchar(10),

数值 int

)

insert into T values('2015-10-15','10:11:12',1,10)

insert into T values('2015-10-15','10:11:12',2,11)

insert into T values('2015-10-15','10:11:12',3,12)

insert into T values('2015-10-15','10:11:12',4,13)

insert into T values('2015-10-15','10:11:12',5,14)

insert into T values('2015-10-15','10:11:12',6,10)

insert into T values('2015-10-15','10:11:12',7,11)

insert into T values('2015-10-15','10:12:12',1,2)

insert into T values('2015-10-15','10:12:12',2,3)

insert into T values('2015-10-15','10:12:12',3,4)

select  from t

pivot

(

sum(数值)

for

设备 in([1],[2],[3],[4],[5],[6],[7])

)p

select 日期,时间,

SUM(Case when 设备=1 then 数值 else 0 end) As [1],

SUM(Case when 设备=2 then 数值 else 0 end) As [2],

SUM(Case when 设备=3 then 数值 else 0 end) As [3],

SUM(Case when 设备=4 then 数值 else 0 end) As [4],

SUM(Case when 设备=5 then 数值 else 0 end) As [5],

SUM(Case when 设备=6 then 数值 else 0 end) As [6],

SUM(Case when 设备=7 then 数值 else 0 end) As [7]

 from t

Group by 日期,时间

;     ALTERTABLE语句

      ALTERTABLE语句用于在已有的表中添加、修改或删除列。

      ALTERTABLE语法

      如需在表中添加列,请使用下列语法:

      ALTERTABLEtable_name

      ADDcolumn_namedatatype

      在表"Persons"中添加一个名为"Birthday"的新列。

      ALTERTABLEPersons

      ADDBirthdaydate

      新列"Birthday"的类型是date,可以存放日期。数据类型规定列中可以存放的数据的类型。

      

扩展资料:

      基本语句

      1、数据记录筛选:

      sql="selectfrom数据表where字段名=字段值orderby字段名[desc]"(按某个字段值降序排列,默认升序ASC)。

      sql="selectfrom数据表where字段名like'%字段值%'orderby字段名[desc]"

      sql="selecttop10from数据表where字段名=字段值orderby字段名[desc]"

      sql="selectfrom数据表where字段名in('值1','值2','值3')"

      sql="selectfrom数据表where字段名between值1and值2"

      sql="select列名1,列名2from数据表where字段名=字段值groupby列名1,列名2"(groupby用来分组,并且只有出现自groupby中的列名,才允许出现在select语句中)。

      2、更新数据记录:

      sql="update数据表set字段名=字段值where条件表达式"

      sql="update数据表set字段1=值1,字段2=值2字段n=值nwhere条件表达式"

      3、删除数据记录:

      sql="deletefrom数据表where条件表达式"

      sql="deletefrom数据表"(将数据表所有记录删除)

      参考资料来源:百度百科-SQL语句大全

是在什么程序中使用?

1用<ul><li>name1 name2 name3</li>name4 name5 name6 <li></li></ul>

在css里给li样式:line-hight:10px;

2用<br />

3用表格<td height="自定义"></td>

用一个循环。

先用参数取到到底要变成多少行,和单价

declare@tint

declare@salnvarchar(8)

根据需求或实际情况将应变为多少行这个烤取给变量@t,单价取给@sal

设置循环的起始数值

declare@iint

set@i=1

开始循环

while(@i

begin

--将单行的数据插入需要的表

insertinto()

values()

--循环参数自增

set@i=@i1

end

以上就是关于sql 多列插入数据全部的内容,包括:sql 多列插入数据、如何设计多行多列的数据库表、sql 数据表一列变多列等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/sjk/10205318.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存