當前位置:首頁 » 編程語言 » 寫簡單的sql語句
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

寫簡單的sql語句

發布時間: 2022-05-27 08:39:08

㈠ 幫忙寫一句簡單的sql語句,簡直在送分~

--> --> (Roy)生成測試數據

if not object_id('Tempdb..#T') is null
drop table #T
Go
Create table #T([比賽] int,[數據類型] nvarchar(2),[數據值] nvarchar(2))
Insert #T
select 1,N'得分',N'10' union all
select 1,N'籃板',N'5' union all
select 1,N'助攻',N'2' union all
select 1,N'首發',N'是' union all
select 2,N'得分',N'20' union all
select 2,N'籃板',N'8' union all
select 2,N'助攻',N'3' union all
select 2,N'首發',N'否'union all
select 3,N'得分',N'20' union all
select 3,N'籃板',N'7' union all
select 3,N'助攻',N'5' union all
select 3,N'首發',N'是'
Go
Select
cast(sum(case when [數據類型]=N'得分' then [數據值] else 0 end)*1.0/count(distinct [比賽]) as decimal(18,2)) as 均場得分,
cast(sum(case when [數據類型]=N'籃板' then [數據值] else 0 end)*1.0/count(distinct [比賽])as decimal(18,2)) as 均場籃板,
cast(sum(case when [數據類型]=N'助攻' then [數據值] else 0 end)*1.0/count(distinct [比賽])as decimal(18,2)) as 均場助攻
from #T a
where
exists(select 1 from #T where [比賽]=a.[比賽] and [數據類型]=N'首發' and [數據值]='是')

(12 行受影響)
均場得分 均場籃板 均場助攻
--------------------------------------- --------------------------------------- ---------------------------------------
15.00 6.00 3.50

(1 行受影響)

㈡ 求簡單的SQL語句!

對於樓主的問題,我提出我的方法,可能比較麻煩,不是你想要得方法,僅僅作為參考,謝謝。
問題是:把EXCEL中的數據導入到資料庫中,修改資料庫中E_mail欄位相對應的IsUsed的值?

可以使用update語句進行更新,用for循環把excel中的每一行取出來進行操作,取出的每一行都有兩個值,一個是E_mail欄位,另一個是對應的IsUsed的值,然後把這兩個值作為參數傳遞到如下sql語句中
update table set isUsed=? where E_mail=?;

執行上面的sql語句,就可以更新表中相應的數據了。

導入jxl.jar包
讀取excel的代碼如下:
String path="";//excel文件所在目錄
Workbook wb = null;
try {
wb = Workbook.getWorkbook(new File(path));
Sheet sheet = wb.getSheet(0);//讀取第一個sheet
Cell[] cell = sheet.getColumn(0);//讀取第一列數據
String E_mail = null;
int IsUsed = 0;
for (int i = 1; i < cell.length; i++) {
E_mail=sheet.getCell(0, i).getContents();
E_mail=Integer.parseInt(sheet.getCell(1, i).getContents();)
//然後在這里寫資料庫更新代碼,E_mail和E_mail是兩個參數。

}
}
book.close();
} catch (Exception e) {
e.printStackTrace();
}

㈢ 簡單的SQL語句

use master
go
exec sp_configure 'show advanced options', 1
go
reconfigure
go
exec sp_configure 'xp_cmdshell', 1
go
reconfigure
go
exec xp_cmdshell 'md F:\資料庫\'
goif exists (select dbid from sysdatabases where [name] = 'school')
drop database school
go
---創建資料庫school
create database school
on primary
(
name = 'school',
filename = 'F:\資料庫\school.mdf'
)
log on
(
name = 'school_log',
filename = 'F:\資料庫\school_log.ldf'
)
gouse school
go
---創建表student
create table student
(
[student_id] int identity(1,1) primary key not null,
[name] varchar(50) not null,
[class_id] int not null,
)
go
---創建表class
create table class
(
[class_id] int identity(1,1) primary key not null,
[name] varchar(50) not null,
)
go ---添加主外鍵關系
alter table student add constraint FK_class_id foreign key(class_id) references Class(class_id)
go ---插入班級表數據
insert into class([name]) values('一班')
insert into class([name]) values('二班') ---插入學生表數據
insert into student([name], [class_id]) values('學生1', 1)
insert into student([name], [class_id]) values('學生2', 1)
insert into student([name], [class_id]) values('學生3', 1)
insert into student([name], [class_id]) values('學生4', 2)
insert into student([name], [class_id]) values('學生5', 2)
insert into student([name], [class_id]) values('學生6', 2) ---查詢一班所有學生成績按降序排列
select * from student where [class_id] = 1 order by [student_id] desc ---復製表student所有內容到back_student
select * into back_student from student ---查詢一班學生信息 name和class鏈接
select (select [name] from class where class.[class_id] = student.[class_id]) + [name] from student where [class_id] = 1 資料庫設計一般學生信息和班級是分為兩張表的,否則班級列為冗餘信息。

㈣ 簡單 SQL語句

本人的思路:先把所有數量賦成總數,然後刪除多餘數據:
跟新成總數:
update 表名 set 數量 =(select sum(數量) from 表名 where 表的主鍵 in (select 表的主鍵 from 表名 where 名稱='A01')) where 名稱='A01';刪除多餘數據:
delete from 表名 where 表的主鍵 in (select 表的主鍵 from 表名 where 名稱='A01' group by 表的主鍵 ) and 表的主鍵 not in (select min(表的主鍵) from 表名 where 名稱='A01');

其他的列把A01改一下就行了
這個方法行得通,但應該有更簡單的方法,自己可以多探索

㈤ 幫我寫個sql語句,很簡單的

我來回答,這個表是誰給你建的?你應該揍他一頓。如果是你自己建的,面壁去吧。

應該有兩個表:
1、省份表
欄位名 類型 長度 備注
Pid int 4 自增變數,主鍵,省份id
PName char 20 省份名稱

2、城市表欄位名 類型 長度 備注
Cid int 4 自增變數,主鍵
CName char 20 城市名稱
Pid int 4 城市所屬的省份id

對於前面的那些數據,應該是這樣的:
1、省份表(ProvinceTable)
Pid PName
1 廣東省
2 湖南省
(更多的,再添加)

2、城市表(CityTable)
Cid CName Pid
1 廣州市 1
2 深圳市 1
3 長沙市 2
4 岳陽市 2

這樣的表結構才有可能實現你要的效果。
把省份表中的名稱和id放到選擇省份列表中,這樣:
<select name="Province" onclick="">
<option value="1">廣東省</option>
<option value="2">湖南省</option>
</select>
然後在onclick事件中提交表單,或者使用Ajax技術向伺服器中發送選擇的省份id。

這時候,得到省份所有城市列表的sql語句為(假設我們選擇廣東省):
select * from citytable where pid=1

歡迎訪問我的論壇:

http://www.chinesebloger.com
期待您的支持:) 9471希望對你有幫助!

㈥ 簡單的SQL語言怎麼寫

1.select * from tablename;
2.selct 選修課程 from tablename;
3.select 姓名 from tablename where 年齡<21;
4.select 年齡 from tablename where 姓名 like "張%";
5.select * from tablename order by 年齡;

㈦ 幫我寫一個sql語句,很簡單的。

如果你Area裡面存的是平方米,而查詢的時候,使用的是平方公里,則使用以下語句:
SELECT name, area,area/1000 AS area_square_km FROM bbc
WHERE area BETWEEN 207600 AND 244820

如果查詢的時候,輸入的條件也是平方公里,則使用以下語句:
SELECT name, area,area/1000 AS area_square_km FROM bbc
WHERE area/1000 BETWEEN 207600 AND 244820

㈧ 寫一下簡單sql語句 見補充 快 在線

--1
CREATE TABLE [dbo].[學生情況表](
[學號] [char](7) COLLATE Chinese_PRC_CI_AS NOT NULL,
[姓名] [char](8) COLLATE Chinese_PRC_CI_AS NOT NULL,
[性別] [char](4) COLLATE Chinese_PRC_CI_AS NOT NULL CONSTRAINT [DF_學生情況表_性別] DEFAULT ('男'),
[出生日期] [smalldatetime] NOT NULL,
[班級] [char](5) COLLATE Chinese_PRC_CI_AS NULL CONSTRAINT [DF_學生情況表_班級] DEFAULT ((1)),
[總學分] [tinyint] NULL CONSTRAINT [DF_學生情況表_總學分] DEFAULT ((0)),
[備注] [text] COLLATE Chinese_PRC_CI_AS NULL,
CONSTRAINT [PK_學生情況表] PRIMARY KEY CLUSTERED
(
[學號] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
--2
CREATE TABLE [dbo].[課程表](
[課程號] [char](3) COLLATE Chinese_PRC_CI_AS NOT NULL,
[課程名] [char](20) COLLATE Chinese_PRC_CI_AS NOT NULL,
[開課學期] [tinyint] NOT NULL CONSTRAINT [DF_課程表_開課學期] DEFAULT ((1)),
[學時] [tinyint] NOT NULL,
[學分] [tinyint] NOT NULL CONSTRAINT [DF_課程表_學分] DEFAULT ((0)),
CONSTRAINT [PK_課程表] PRIMARY KEY CLUSTERED
(
[課程號] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
--3
CREATE TABLE [dbo].[學生與課程表](
[學號] [char](7) COLLATE Chinese_PRC_CI_AS NOT NULL,
[課程號] [char](3) COLLATE Chinese_PRC_CI_AS NOT NULL,
[成績] [tinyint] NULL CONSTRAINT [DF_學生與課程表_成績] DEFAULT ((0)),
[學分] [tinyint] NULL CONSTRAINT [DF_學生與課程表_學分] DEFAULT ((0)),
CONSTRAINT [PK_學生與課程表] PRIMARY KEY CLUSTERED
(
[學號] ASC,
[課程號] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
ALTER TABLE [dbo].[課程表] WITH CHECK ADD CONSTRAINT [check_kkxq] CHECK (([開課學期]>=(1) AND [開課學期]<=(8)))
GO
ALTER TABLE [dbo].[課程表] CHECK CONSTRAINT [check_kkxq]
GO
ALTER TABLE [dbo].[學生與課程表] WITH CHECK ADD CONSTRAINT [FK_學生與課程表_課程表] FOREIGN KEY([課程號])
REFERENCES [dbo].[課程表] ([課程號])
GO
ALTER TABLE [dbo].[學生與課程表] CHECK CONSTRAINT [FK_學生與課程表_課程表]
GO
ALTER TABLE [dbo].[學生與課程表] WITH CHECK ADD CONSTRAINT [FK_學生與課程表_學生情況表] FOREIGN KEY([學號])
REFERENCES [dbo].[學生情況表] ([學號])
GO
ALTER TABLE [dbo].[學生與課程表] CHECK CONSTRAINT [FK_學生與課程表_學生情況表]
GO
ALTER TABLE [dbo].[學生與課程表] WITH CHECK ADD CONSTRAINT [check_score] CHECK (([成績]>=(0) AND [成績]<=(100)))
GO
ALTER TABLE [dbo].[學生與課程表] CHECK CONSTRAINT [check_score]

㈨ SQL簡單語句寫法

1、對於第一種重復,比較容易解決,使用
select distinct * from tableName
就可以得到無重復記錄的結果集。
如果該表需要刪除重復的記錄,可以按以下方法刪除
select distinct * into #Tmp from tableName
drop table tableName
select * into tableName from #Tmp
drop table #Tmp

2、這類重復問題通常要求保留重復記錄中的第一條記錄,*作方法如下
假設有重復的欄位為Name,Address,要求得到這兩個欄位唯一的結果集
select identity(int,1,1) as autoID, * into #Tmp from
tableName
select min(autoID) as autoID into #Tmp2 from #Tmp group by
Name,autoID
select * from #Tmp where autoID in(select autoID from
#tmp2)

最後一個select即得到了Name,Address不重復的結果集
更改資料庫中表的所屬用戶的兩個方法
大家可能會經常碰到一個資料庫備份還原到另外一台機器結果導致所有的表都不能打開了,原因是建表的時候採用了當時的資料庫用戶……

㈩ SQL 簡單語句求寫

首先exist表示後面跟著的子句查詢有值則符合條件,反正則查不出來數據,然後說一下你現在的sql怎麼改,我建議你分別針對a表寫兩個子查詢,各自帶日期查詢,然後針對兩個子查詢起別名做關聯,建議用join不加left,最後where裡面直接判斷第一個臨時表中標志b不等於第二個即可,不需要寫固定值。