sql方法
三種方法分別如下:
1、使用向導創建資料庫。
2、使用企業管理器創建資料庫。
3、使用Transact-SQL的CREATE DATABASE語句創建資料庫 。
依據資料庫的名稱創建標識,將所述資料庫的名稱和所述標識作為第一key值,將所述資料庫的信息進行保存並作為第一value值,得到所述資料庫對應的KV記錄;在所述資料庫中建立數據表;將所述資料庫的名稱和數據表的名稱作為第二key值。
將所述數據表的信息進行保存並作為第二value值得到所述數據表對應的KV記錄;在所述數據表中插入數據;將所述資料庫的名稱,數據表的名稱和數據的名稱作為第三key值,將所述數據的信息進行保存並作為第三value值,得到所述數據對應的KV記錄;獲得所述適用SQL查詢方法的KV資料庫。
(1)sql方法擴展閱讀:
SQL中的查詢語句只有一個:SELECT,它可與其它語句配合完成所有的查詢功能。SELECT語句的完整語法,可以有6個子句。
查詢語句的完整的語法如下:
SELECT 目標表的列名或列表達式集合
FROM 基本表或(和)視圖集合
〔WHERE條件表達式〕
〔GROUP BY列名集合
〔HAVING組條件表達式〕〕
〔ORDER BY列名〔集合〕…〕
簡單查詢,使用TOP子句,查詢結果排序order by 默認ASC升序,使用關鍵詞DESC降序。帶條件的查詢where,使用算術表達式,使用邏輯表達式,使用between和in關鍵字。
參考資料來源:網路-SQL資料庫
Ⅱ sql定義別名的三種方法
方法一:直接在欄位名稱後面加上別名,中間以空格隔開。
select Emp_Id "EmpId"
方法二:以as關鍵字指定欄位別名,as在select的欄位和別名之間。
select Emp_Id as EmpId
方法三:對於SQL Sever還可以利用等號"="指定欄位的別名。
select EmpId=EmpId
Ⅲ 如何使用SQL資料庫
方法:
1、首先打開SQL SERVER自帶的資料庫管理工具,從開始菜單中可以找到,如圖點擊進去;
2、開始連接SQL SERVER伺服器,就是我們裝好的SQL SERVER 伺服器;
3、如圖,右擊資料庫,選擇第一個,新建一個資料庫;
4、填寫資料庫的名稱(箭頭方向),下面是設置自動增長的,一般不用管,默認
5、點擊確定後就可以生成一個資料庫,此時裡面是沒有表的;
6、右擊表新建一個表,填寫你要的欄位名稱
7、填完欄位名稱後點擊欄位名稱那個內部窗口的小叉叉,然後就提示你輸入表名了,填寫下表名,一個資料庫的建立過程就是這樣的;
注意事項:
建立資料庫需要先打開資料庫伺服器。
Ⅳ 使用sql語句查詢日期的方法
使用sql語句查詢日期的方法
結構化查詢語言(Structured Query Language)簡稱SQL,是一種特殊目的的編程語言,是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統。以下是我為大家整理的使用sql語句查詢日期的方法,僅供參考,希望能夠幫助大家。
使用sql語句查詢日期的方法 篇1
使用sql語句查詢日期
select * from ShopOrder where datediff(week,ordTime,getdate()-1)=0 //查詢當天日期在一周年的數據
--查詢當天:
select * from info where DateDiff(dd,datetime,getdate())=0
--查詢24小時內的:
select * from info where DateDiff(hh,datetime,getDate())<=24
--info為表名,datetime為資料庫中的欄位值
--查詢當天:
select * from info where DateDiff(dd,datetime,getdate())=0
--查詢24小時內的:
select * from info where DateDiff(hh,datetime,getDate())<=24 --info為表名,datetime為資料庫中的欄位值
Sql代碼
--查詢當天記錄另類的方法
SELECT *
FROM j_GradeShop
WHERE (GAddTime BETWEEN CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000')
AND CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000') + 1) ORDER BY GAddTime DESC
--查詢當天記錄另類的方法
SELECT *
FROM j_GradeShop
WHERE (GAddTime BETWEEN CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000')
AND CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000') + 1) ORDER BY GAddTime DESC
DATEDIFF 函數:
語法:
DATEDIFF ( datepart , startdate , enddate )
備注:enddate 減去 startdate。如果 startdate 晚於 enddate,則返回負值。 如果結果超出整數值范圍,則 DATEDIFF 將產生錯誤。對於毫秒,最大數是 24 天 20 小時 31 分鍾零 23.647 秒。對於秒,最大數是 68 年。
跨分鍾、秒和毫秒等邊界計算的方法使得 DATEDIFF 指定的結果在所有數據類型中均一致。結果是帶正負號的整數值,它等於跨第一個和第二個日期間的
datepart 邊界數。例如,在 1 月 4 日(星期日)和 1 月 11 日(星期日)之間的'星期數是 1。
可以再MSSQL中測試:
Sql代碼
--兩個時間差剛好是24
--列印的方式
print dateDiff(hh,'2009-1-1 0:0:0','2009-1-2 0:0:0')
--查詢的方式
print dateDiff(hh,'2009-1-1 0:0:0','2009-1-2 0:0:0')
--兩個時間差剛好是24
--列印的方式
print dateDiff(hh,'2009-1-1 0:0:0','2009-1-2 0:0:0')
--查詢的方式
print dateDiff(hh,'2009-1-1 0:0:0','2009-1-2 0:0:0')
Sql代碼
--本月記錄
SELECT * FROM 表 WHERE datediff(month,[dateadd],getdate())=0
--本周記錄
SELECT * FROM 表 WHERE datediff(week,[dateadd],getdate())=0
--包括本年這些查詢方式是一樣的
--本月記錄
SELECT * FROM 表 WHERE datediff(month,[dateadd],getdate())=0
--本周記錄
SELECT * FROM 表 WHERE datediff(week,[dateadd],getdate())=0
--包括本年這些查詢方式是一樣的
sql server中的時間函數
1. 當前系統日期、時間
select getdate()
2. dateadd 在向指定日期加上一段時間的基礎上,返回新的 datetime 值 例如:向日期加上2天
select dateadd(day,2,'2004-10-15') --返回:2004-10-17 00:00:00.000
3. datediff 返回跨兩個指定日期的日期和時間邊界數。
select datediff(day,'2004-09-01','2004-09-18') --返回:17
4. datepart 返回代表指定日期的指定日期部分的整數。
SELECT DATEPART(month, '2004-10-15') --返回 10
5. datename 返回代表指定日期的指定日期部分的字元串
SELECT datename(weekday, '2004-10-15') --返回:星期五
6. day(), month(),year() --可以與datepart對照一下
select 當前日期=convert(var10),getdate(),120)
,當前時間=convert(var8),getdate(),114)
select datename(dw,'2004-10-15')
select 本年第多少周=datename(week,'2004-10-15')
,今天是周幾=datename(weekday,'2004-10-15')
函數 參數/功能
GetDate( ) 返回系統目前的日期與時間
DateDiff (interval,date1,date2) 以interval 指定的方式,返回date2 與date1兩個日期之間的差值 date2-date1
DateAdd (interval,number,date) 以interval指定的方式,加上number之後
的日期
DatePart (interval,date) 返回日期date中,interval指定部分所對應的整數值
DateName (interval,date) 返回日期date中,interval指定部分所對應的字元串名稱
參數 interval的設定值如下:
值 縮 寫(Sql Server) Access 和 ASP 說明
Year Yy yyyy 年 1753 ~ 9999
Quarter Qq q 季 1 ~ 4
Month Mm m 月1 ~ 12
Day of year Dy y 一年的日數,一年中的第幾日 1-366
Day Dd d 日,1-31
Weekday Dw w 一周的日數,一周中的第幾日 1-7
Week Wk ww 周,一年中的第幾周 0 ~ 51
Hour Hh h 時0 ~ 23
Minute Mi n 分鍾0 ~ 59
Second Ss s 秒 0 ~ 59
Millisecond Ms - 毫秒 0 ~ 999
access 和 asp 中用date()和now()取得系統日期時間;其中
DateDiff,DateAdd,DatePart也同是能用於Access和asp中,這些函數的用法也類似
舉例:
1.GetDate() 用於sql server :select GetDate()
2.DateDiff('s','2005-07-20','2005-7-25 22:56:32')返回值為 514592 秒 DateDiff('d','2005-07-20','2005-7-25 22:56:32')返回值為 5 天
3.DatePart('w','2005-7-25 22:56:32')返回值為 2 即星期一(周日為1,周六為7)
DatePart('d','2005-7-25 22:56:32')返回值為 25即25號
DatePart('y','2005-7-25 22:56:32')返回值為 206即這一年中第206天 DatePart('yyyy','2005-7-25 22:56:32')返回值為 2005即2005年
使用sql語句查詢日期的方法 篇2
datediff(week,zy_time,getdate())=0 //查詢本周 datediff(month,zy_time,getdate())=0 //查詢本月
本季:select * from table where datediff(qq,C_CALLTIME,getdate())=0
前半年1-6,後半年7-12:select * from table where datepart(mm,C_CALLTIME)/7 = datepart(mm,getdate())/7 1. 當前系統日期、時間 select getdate()
2. dateadd 在向指定日期加上一段時間的基礎上,返回新的 datetime 值 例如:向日期加上2天
select dateadd(day,2,'2004-10-15') --返回:2004-10-17 00:00:00.000 3. datediff 返回跨兩個指定日期的日期和時間邊界數。
select datediff(day,'2004-09-01','2004-09-18') --返回:17 4. datepart 返回代表指定日期的指定日期部分的整數。 SELECT DATEPART(month, '2004-10-15') --返回 10 5. datename 返回代表指定日期的指定日期部分的字元串 SELECT datename(weekday, '2004-10-15') --返回:星期五 6. day(), month(),year() --可以與datepart對照一下 select 當前日期=convert(var10),getdate(),120) ,當前時間=convert(var8),getdate(),114) select datename(dw,'2004-10-15')
select 本年第多少周=datename(week,'2004-10-15') ,今天是周幾=datename(weekday,'2004-10-15') 函數 GetDate( )
參數/功能
返回系統目前的日期與時間
以interval 指定的方式,返回
DateDiff
date2 與date1兩個日期之間的
(interval,date1,date2)
差值 date2-date1 DateAdd 以interval指定的方式,加上(interval,number,date) number之後的日期
返回日期date中,interval指定
DatePart (interval,date)
部分所對應的整數值 返回日期date中,interval指定
DateName (interval,date)
部分所對應的字元串名稱
參數 interval的設定值如下:
Access 和
縮 寫(Sql Server)
ASP Yy Qq Mm
yyyy q m y d w ww h n s -
值 Year Quarter Month
說明
年 1753 ~ 9999 季 1 ~ 4 月1 ~ 12
一年的日數,一年中的第幾日 1-366 日,1-31
一周的日數,一周中的第幾日 1-7
周,一年中的第幾周 0 ~ 51 時0 ~ 23 分鍾0 ~ 59 秒 0 ~ 59 毫秒 0 ~ 999
Day of year Dy Day Weekday Week Hour Minute Second
Dd Dw Wk Hh Mi Ss
Millisecond Ms
access 和 asp 中用date()和now()取得系統日期時間;其中DateDiff,DateAdd,DatePart也同是能用於Access和asp中,這些函數的用法也類似
舉例:
1.GetDate() 用於sql server :select GetDate()
2.DateDiff('s','2005-07-20','2005-7-25 22:56:32')返回值為 514592 秒 DateDiff('d','2005-07-20','2005-7-25 22:56:32')返回值為 5 天
3.DatePart('w','2005-7-25 22:56:32')返回值為 2 即星期一(周日為1,周六為7) DatePart('d','2005-7-25 22:56:32')返回值為 25即25號
DatePart('y','2005-7-25 22:56:32')返回值為 206即這一年中第206天 DatePart('yyyy','2005-7-25 22:56:32')返回值為 2005即2005年 sql 查詢本周本月問題 ---求相差天數
select datediff(day,'2004-01-01',getdate())
--1.一個月第一天的
SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)
--2.本周的星期一
SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)
select dateadd(wk,datediff(wk,0,getdate()),6) --3.一年的第一天
SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)
--4.季度的第一天
SELECT DATEADD(qq, DATEDIFF(qq,0,getdate()), 0)
--5.當天的半夜
SELECT DATEADD(dd, DATEDIFF(dd,0,getdate()), 0)
--6.上個月的最後一天
SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0))
--7.去年的最後一天
SELECT dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate()), 0))
--8.本月的最後一天
SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0))
--9.本年的最後一天
SELECT dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate())+1, 0))
--10.本月的第一個星期一 select DATEADD(wk,
DATEDIFF(wk,0,dateadd(dd,6-datepart(day,getdate()),getdate())), 0) --查詢本周注冊人數
select count(*) from [user]
where datediff(week,create_day-1,getdate())=0
--上周注冊人數
select count(*) from [user]
where datediff(week,create_day-1,getdate())=1
--本月注冊人數
select count(*) from [user]
where datediff(month,create_day,getdate())=0
--上月注冊人數
select count(*) from [user]
where datediff(month,create_day,getdate())=1
--如果要效率,這樣寫查詢
--查詢本周注冊人數
where
create_day>=dateadd(day,2-datepart(weekday,getdate()),convert(varchar,getdate(),112)) and
create_day<dateadd(day,9-datepart(weekday,getdate()),convert(varchar,getdate(),112))
--上周注冊人數
select count(*) from [user] where
create_day>=dateadd(day,-5-datepart(weekday,getdate()),convert(varchar,getdate(),112)) and
create_day<dateadd(day,2-datepart(weekday,getdate()),convert(varchar,getdate(),112))
--本月注冊人數
select count(*) from [user]
where create_day>=dateadd(day,1-day(getdate()),convert(varchar,getdate(),112)) and
create_day<dateadd(month,1,dateadd(day,1-day(getdate()),convert(varchar,getdate(),112)))
--上月注冊人數
select count(*) from [user] where
create_day>=dateadd(month,-1,dateadd(day,1-day(getdate()),convert(varchar,getdate(),112)))
and create_day<dateadd(day,1-day(getdate()),convert(varchar,getdate(),112))
--本周
select count(*) from User
where datediff(dd,create_day,getdate()) <= datepart(dw,getdate())
--上周
select count(*) from User
where datediff(dd,create_day,(getdate() - datepart(dw,getdate()))) <= 7
--本月
select count(*) from User
where datepart(mm,create_day) = datepart(mm,getdate()) --上月
where datepart(mm,create_day) = datepart(mm,getdate()) - 1 --本周
select count(*) from [User]
where datediff(dd,create_day,getdate()) <= datepart(dw,getdate())
--上周
select count(*) from [User]
where datediff(dd,create_day,(getdate() - datepart(dw,getdate()))) <= 7
--本月
select count(*) from [User]
where datepart(mm,create_day) = datepart(mm,getdate()) --上月
select count(*) from [User]
where datepart(mm,create_day) = datepart(mm,getdate()) - 1 學習
month(create_day)=month(getdate())本月 month(create_day)=month(getdate())-1 上月
補充 查詢今日所有的
SELECT * from feedback WHERE (DATEDIFF(d,fedtime,GETDATE())=0) ORDER BY fedid DESC
;Ⅳ SQL的基本操作
1.創建表
(1)用Create Table 命令創建表
語法:
Create Table tabl_name
({
}column_name As computed_column_expression
}
}[,...n]
)
[On {fiegroup | Default}]
[Textimage_On {fiegroup | Default}]
例子:
打開cust資料庫,創建一個表,該表包含了學生的有關信息,即有學號、姓名、性別、出生日期、籍貫、聯系電話、住址和備注信息。
Use cust
Create Table students
(
number int not null,
name varchar(10) not null,
sex char(2) null,
birthday datetime null,
hometown varchar(30) null,
telphone_no varchar(12) null,
address varchar(30) null,
others varchar(50) null
)
在這個表中number表示學生代號,數據類型為int,不允許為空;name表示學生姓名,數據類型為varchar,長度為10,不允許為空;sex表示學生的性別,數據類型為char,長度為2,允許為空;birthday表示學生的出生日期,數據類型為datetime,允許為空;hometown表示學生的籍貫,數據類型為varchar,長度為30,允許為空;telephone_no表示學生的聯系電腦,數據類型為varchar,長度為12,允許為空;address表示學生的住址,數據類型為varchar,長度為30,允許為空;others表示學生的備注信息,長度為50,允許為空。
2.修改表的結構
(1)使用T-SQL語句增加和刪除一個新列
語法:
Alter Table table
{
ADO
{[]
|colun_name As computed_column_expression
|[]
}[,...n]
|Drop
{Column column
}[,...n]
}
例子:打開cust資料庫,修改其中的表students的結構,增加一個新欄位,欄位名為ying,數據類型是varchar,長度是10,沒有默認值,充許為空。
Use cust
Alter Table students Add ying varchar(10) null
打開cust資料庫,修改其中的表students的結構,刪除一個欄位,欄位名為ying。
Use cust
Alter Table students Drop Column ying
3.向表中插入數據
(1)用 Insert 語句
語法如下:
Insert [Into]
{table_name|view_name}[(column_list)]
{Values|values_list|select_statement}
注意:在插入數據時,字元數據和日期數據要使用引號引起來。
例子:
Use cust
Insert Into students
Values (11,"影子","男","1999-12-12","湖北","83779805","武漢市橋口區","VB愛好者")
打開cust資料庫,向students表中插入數據
(2)用Default 選項
在插入數據時,可以使用Default選項。Default選項有兩種形式,一種形式是Default Values,另一種是Default。
Default Values 形式為表中的某一行的所有列插入默認值。使用這種形式的前提條件是表中的所有列必須是這四種類型之一:Identity屬性,Timestamp數據類型,允許為Null,或者有一個指定的默認值。否則,會錯誤信息。
例子:
Use cust
Insert Into students Default Values
這個例子會出現錯誤,因為students表的number欄位是設置為不允許為空的。
Default 形式是為表中的某一列插入默認值。要插入的該列必須具備一定的條件,即該列要麼是Timestamp 數據類型,要麼是允許為Null,要麼是有一個指定的默認值,否則,會出現錯誤信息。
例子:
Use cust
Insert Into students Values(11,"影子",Default,Default,Default,Default,Default,Default)
由天前2個欄位不能為空,所以要賦值,否則會出現錯誤,而後面的6個欄位允許為空,因此可以調用Default默認。
(3)插入部分數據
在使用Insert語句插入數據是,還可以插入部分數據,也就是可以為每一行的指定的部分列插入數據。在插入部分數據時,應該注意以下三個問題:
☆在 Insert 子句中,指定要插入數據的列名。
☆在 Values 子句中,列出與列名對應的數據。列名的順序和數據的順序應該完全對應。
☆在 Insert 子句中,沒有列出的列應該至少具有這四種類型之一:Identtty 屬性,Timestamp 數據類型,允許為 Null,或者有一個指定的默認值。否則,會出現錯誤信息。
例子:
Use cust
Insert Into students (number,name)
Values (110,"影子")
打開cust資料庫,向students表中插入一行數據
注意:如用下例語句將發生錯誤,因為name欄位是不允許為空的(在創建資料庫時設定的)
Insert Into students (number)
Values (110)
(4)用 Select 語句插入多條數據
Insert 語句插入數據的特點是每一次只能插入一行數據。相反,Select 也可以用在 Insert 語句中,並且可以一次插入多條數據。使用 Select 語句插入數據的語法形式如下:
Insert table_name
Select column_list
From table_list
Where search_conditions
在使用 Select 語句插入數據時,應該注意下面幾點:
☆在 Insert 語句中使用 Select 時,他們參考的表既可以是相同的,也可以是不同的。
☆要插入數據的表必須已經存在。
☆要插入數據的表必須和 Select 的結果集兼容。兼容的含義是列的數量和順序必須相同,列的數據類型或者相同,或者SQL Server 可以自動轉換。
例子:
Use cust
Insert students
Select number,name,sex,birthday,hometown,telphone_no,address,others
From students
注意:
Select 後面的欄位要輸完整,這個例子是自己向自己插入多條數據(自己向自己插入是被允許的)
補充:
你還可以「From students」後面加上「Where name="影子"」,只插入name等於影子的記錄,可以用And 和 Or 加上多個條件。
(5)使用 Select Into 插入數據到一個新表中
帶有 Into 子句的 Select 語句允許用戶定義一個新表並且把數據插入到新表中。這種方法不同於前面講述的那些方法。在前面的那些方法中,一個共同的特點,是在數據輸入之前表已經存在。而使用 Select Into 插入數據的方法,是在插入數據的過程中建立新表。
Select Into 語句的語法如下:
Select select_list
Into new_table_name
From table_list
Where search_conditions
在使用 Select Into 插入數據時,要注意下面幾點:
☆在某個資料庫中使用 Select Into 插入數據時,設置該資料庫的 Select Into/Bulk Copy 為真。
☆新表不能存在,否則會產生錯誤信息。
☆新表中的列和行是基於查詢結果集
☆要插入的數據不記錄在日誌中。
☆在select_list 中出現的列應該使用別名,否則,新表中的列沒有列名。沒列名的表只能通過 Select * From new_table_name 的形式查詢。因此,應該為列起個別名。
☆這種方法多用在對列進行各種計算的情況。
例子:
Select number,name
Into newcust1
From students
創建新的表newcust1,插入students表中的number和name欄位的所有數據。
補充:如果要插入所有欄位的記錄,則「Select *」,也可在「From students」後加條件,方法和上個例子一樣。
(6)用 UPdate 語句修改表中的數據
Update 語句用來修改表中已存在的數據。Update 語句既可以一次修改一行數據,也可以一次修改許多行,甚至可以一次修改表中的全部數據。Update 語句使用 Where 子句指定要修改的行,使用 Set 子句給出新的數據。新數據可以是常量,也可以是指定的表達式,還可以是使用 From 子句來自其他表的數據。
Update 語句的語法如下:
Update {table_name|view_name}
Set {column_list}=expression [,. . .]
[Where clause]
在使用 Update 語句時,如果沒有使用 Where 子句,那麼就對表中所有的行進行修改。如果使用Update 語句修改數據時與數據完整性約束有沖突,那麼修改就不會發生,整個修改事務全部滾回。例如,這種沖突可能是所輸入的值是錯誤的數據類型,或者所輸入的值違背了在該列定義的規則約束,等等。
例子:
Use cust
Update students
Set name=name+"007"
Where number>100
打開cust資料庫,修改students表,使number>100的數據的name的值全部加"007"。
4.用 Delete 語句刪除表中的數據
當資料庫中的數據不需要的進修可以刪除。一般情況下,刪除數據使用 Delete 語句。Delete 語句可以一次
Ⅵ SQL資料庫 查詢方法
--SQL 查詢所有表名:
SELECT NAME FROM SYSOBJECTS WHERE TYPE='U'
SELECT * FROM INFORMATION_SCHEMA.TABLES
--查詢表的所有欄位名:
SELECT NAME FROM SYSCOLUMNS WHERE ID=OBJECT_ID(' 表名' )
SELECT * FROM INFORMATION_SCHEMA.TABLES
SELECT * FROM INFORMATION_SCHEMA.VIEWS
SELECT * FROM INFORMATION_SCHEMA.COLUMNS
---------以下為其他資料庫查詢表----------
--ORACLE 查看所有表名:
SELECT TABLE_NAME FROM USER_TABLES
--ACCESS 查看所有表名:
SELECT NAME FROM MSYSOBJECTS WHERE TYPE=1 AND FLAGS=0
--MSYSOBJECTS 是系統對象,默認情況是隱藏的。通過工具、選項、視圖、顯示、系統對象可以使之顯示出來。
Ⅶ 建立sql資料庫方法
建立sql資料庫方法一:(咐友拿最簡單告肢的)使用企業管理器
1)打開企業管理器
2)單擊需要創建資料庫的伺服器左邊的加號圖形,展開樹行目錄,在對話框中選擇「資料庫」節點,然後單擊滑鼠右鍵,系統彈出浮動菜單,在浮動菜單中選擇新建資料庫命令,在彈出的屬性框中填好相應的選項即可
如何建立sql資料庫方法二:使用查詢分析器(要用代碼的,嘿嘿)
1)登陸查詢分析器以後在文本框中輸入代碼即可
2)例如用Transact-SQL語言創建數衡搭據庫的代碼
Usemaster
Go
CREATEDATABASE產品管理信息系統
ON
(
NAME=產品管理信息系統_dat,
FILENAME="C:產品管理信息系統.mdf",
SIZE=5,
MAXSIZE=10,
FILEGROWTH=1
)
LOGON
(NAME=產品管理信息系統_log,
FILENAME="C:產品管理信息系統.ldf",
SIZE=2,
MAXSIZE=5,
FILEGROWTH=1
)
GO
使用命令代碼如下:
CreateTableT_Teacher
(NameVarchar2(32)NOTNULL,
SexChar(1)NOTNULL,
TitleVarchar2(32),
ProfessionVarchar2(32)NOTNULL,
LevelVarchar2(24)NOTNULL,
DegreeVarchar2(24)NOTNULL,
WorkVarchar2(32)NOTNULL
);
CreateIndexidx_teacher_nameOnT_Teacher(Name);
CreateIndexidx_teacher_proOnT_Teacher(Profession);
Ⅷ sql調優的幾種方式
你好,
SQL優化的一些方法
1.對查詢進行優化,應盡量避免全表掃描,首先應考慮在 where 及 order by 涉及的列上建立索引。
2.應盡量避免在 where 子句中對欄位進行 null 值判斷,否則將導致引擎放棄使用索引而進行全表掃描。
3.應盡量避免在 where 子句中使用!=或<>操作符,否則將引擎放棄使用索引而進行全表掃描。
4.應盡量避免在 where 子句中使用 or 來連接條件,否則將導致引擎放棄使用索引而進行全表掃描。
5.in 和 not in 也要慎用,否則會導致全表掃描,
6.下面的查詢也將導致全表掃描:
select id from t where name like '%abc%'
7.應盡量避免在 where 子句中對欄位進行表達式操作,這將導致引擎放棄使用索引而進行全表掃描。
8.應盡量避免在where子句中對欄位進行函數操作,這將導致引擎放棄使用索引而進行全表掃描。
9.不要在 where 子句中的「=」左邊進行函數、算術運算或其他表達式運算,否則系統將可能無法正確使用索引。
10.在使用索引欄位作為條件時,如果該索引是復合索引,那麼必須使用到該索引中的第一個欄位作為條件時才能保證系統使用該索引,否則該索引將不會被使用,並且應盡可能的讓欄位順序與索引順序相一致。
Ⅸ 關於SQL模糊查詢日期時間的方法
有以下三種方法:
1、Convert轉成String,在用Like查詢
select * from table1 where convert(varchar,yourtime,120) like '2017-06-30%'
2、Between
select * from table1 where yourtime between '2017-06-30 0:00:00' and '2017-06-30 24:59:59'";
3、datediff()函數
select * from table1 where datediff(day,yourtime,'2017-06-30')=0
(9)sql方法擴展閱讀:
滾與上述日期格式的like模糊查詢的注意事項
1、select * from T where sendTime like '%2007_12_%' 可以查詢2007年12月的所有記錄
如果like條件改為'%2007-12-%' ,'%2007_12_3%' ,或'%2007_12_30%' 都查不出數據。
2、select * from T where sendTime like '%12_30%' 可以查詢12月30日的所有記錄
如果like條件改為'%07_12_30%' 也查不出數據。