欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Access和SQL Server里面的SQL語句的不同之處

 更新時(shí)間:2009年12月04日 12:58:50   作者:  
做了一個(gè)Winform的營養(yǎng)測量軟件,來回的搗騰著Access數(shù)據(jù)庫,還是那幾句增刪改查,不過用多了,發(fā)現(xiàn)Access數(shù)據(jù)庫下的SQL語句和SQL Server下正宗的SQL還有有很大的不同。

我的感覺是,Accees數(shù)據(jù)庫雖然可以稱得上是小型的關(guān)系型數(shù)據(jù)庫,并且也是使用的結(jié)構(gòu)化查詢語言SQL,但它的語法(主要體現(xiàn)在函數(shù)上),卻類似vbscript的語法,我想,這應(yīng)該和Access屬于Office系列有關(guān),基于它的開發(fā)和應(yīng)用,自然就與VBA扯上關(guān)系,因而Access的函數(shù)庫也就是VBA的函數(shù)庫,而非SQL函數(shù)庫。下面,我們來具體看下Access和SQL Server在查詢語句的編寫上具體的不同。

一、數(shù)據(jù)類型轉(zhuǎn)換:

  1. Access: SELECT '調(diào)查'+CStr(Did) as diaocha FROM CZdengji
  2. SQL Server: select artid,'調(diào)查'+Cast(listid As varchar) as did from kingart where artdate>=getdate()

      Access中SQL查詢的數(shù)據(jù)類型轉(zhuǎn)換有很多函數(shù),每一個(gè)函數(shù)都可以強(qiáng)制將一個(gè)表達(dá)式轉(zhuǎn)換成某種特定數(shù)據(jù)類型。具體如下:CBool(expression) 、CByte(expression) 、CCur(expression) 、CDate(expression) 、CDbl(expression) 、CDec(expression) 、CInt(expression) 、CLng(expression) 、CSng(expression) 、CStr(expression) 、CVar(expression) 、CStr(expression),相信不用說明,大家也看得懂這各種轉(zhuǎn)換符的意思。

二、IIF函數(shù)(ACCESS專用)

  1. Access: SELECT Id,IIF(Isfinished=1,'已完成','進(jìn)行中'),Name,Diaocharen FROM CZdiaocha ORDER BY Isfinished ASC
  2. SQL Server 的寫法就相對更多,可以自定義函數(shù),也可以使用case語句,如select Id,case Isfinished when 1 then '已完成'
    when 0 then '進(jìn)行中'  end,Name,Diaocharen FROM CZdiaocha ORDER BY Isfinished ASC

三、DISTINCT關(guān)鍵字用法: Access里面distinct(expression)的用法單一, expression 只能為指定字段,而不能為表達(dá)式,SQL Server則不同, expression 除了可以為單個(gè)字段,也可以為一個(gè)子查詢等復(fù)雜表達(dá)式。

四、日期格式化

  1. Access: 使用format()函數(shù),SELECT TOP 5 arttitle,format(artdate,'YY-MM-DD') as arttime FROM kingart WHERE listid=9,這里使用format()函數(shù),指定artdate(日期型)查詢出來的格式為YY-MM-DD。
  2. SQL Server: 使用convert()函數(shù),select Id,lanmu,title,content, convert(varchar(10),updatetime ,120) as update_time from news,這里的120,是指定格式為YY-MM-DD,如果是其他數(shù)字(101-120),就是其他的格式。

其它一些常用的SQL語句集錦

  1. SELECT Top 5 * From Food WHERE Fid not in(Select top 5 Fid FROM Food) //查詢第5到第10條記錄
  2. delete from Food where charindex('2007',uptime)>0 or charindex('2008', uptime )>0  //刪除Food表中uptime列包含有2007或2008的記錄,即刪除時(shí)間為2007年和2008年的更新記錄
  3. select Id,lanmu,title,content, convert(varchar(10),updatetime ,120) as update_time from news  // SQL Server里面的convert函數(shù),轉(zhuǎn)換成 varchar(10)類型, 120為指定轉(zhuǎn)換后的格式。
  4. select Mealtype as 餐別,Fname as 食物名稱,sum(rjjingshisz)/2 as 人均凈食生重總和 from CZdengji WHERE Did=6 group by Mealtype,Fname    //分組查詢,GROUP BY的本意就是重復(fù)的字段合為一,對應(yīng)的信息,進(jìn)行匯總(count、sum等運(yùn)算)
  5. Select Count(ID) from Flow where convert(varchar(21),visittime,120) like '2007-01-26% ' ,日期型數(shù)據(jù)模糊查詢。
  6. select * from ('MSDASQL','DRIVER={SQL Server};SERVER=服務(wù)器名字;UID=對端數(shù)據(jù)庫的賬號;PWD=對端密碼', 對端數(shù)據(jù)庫.權(quán)限者.對端的表) as 表   //跨服務(wù)器查詢

相關(guān)文章

  • 你應(yīng)該知道的States字段使用規(guī)范

    你應(yīng)該知道的States字段使用規(guī)范

    這篇文章主要給大家介紹了一些大家應(yīng)該知道的States字段使用規(guī)范的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-12-12
  • 分布式緩存Redis與Memcached的優(yōu)缺點(diǎn)區(qū)別比較

    分布式緩存Redis與Memcached的優(yōu)缺點(diǎn)區(qū)別比較

    Redis和Memcached都是基于內(nèi)存key-value的數(shù)據(jù)存儲系統(tǒng)。兩者都可以通過緩存數(shù)據(jù)結(jié)果,HTML片段或其他可能產(chǎn)生成本很高的內(nèi)容來幫助加快應(yīng)用程序的速度。與memcached相比,Redis功能更強(qiáng)大,更受歡迎并且得到更好的支持。
    2022-12-12
  • SQL注入的實(shí)現(xiàn)以及防范示例詳解

    SQL注入的實(shí)現(xiàn)以及防范示例詳解

    SQL注入是比較常見的網(wǎng)絡(luò)攻擊方式之一,它不是利用操作系統(tǒng)的BUG來實(shí)現(xiàn)攻擊,而是針對程序員編寫時(shí)的疏忽,這篇文章主要給大家介紹了關(guān)于SQL注入的實(shí)現(xiàn)以及防范的相關(guān)資料,需要的朋友可以參考下
    2021-06-06
  • Hadoop 2.x偽分布式環(huán)境搭建詳細(xì)步驟

    Hadoop 2.x偽分布式環(huán)境搭建詳細(xì)步驟

    這篇文章主要為大家詳細(xì)介紹了Hadoop 2.x偽分布式環(huán)境搭建詳細(xì)步驟,感興趣的朋友可以參考一下
    2016-05-05
  • 如何在Navicat新建連接、新建數(shù)據(jù)庫以及導(dǎo)入數(shù)據(jù)庫

    如何在Navicat新建連接、新建數(shù)據(jù)庫以及導(dǎo)入數(shù)據(jù)庫

    Navicat是圖形化操作MySQL的強(qiáng)大工具,但是當(dāng)數(shù)據(jù)庫的服務(wù)器沒有開放3306端口給辦公網(wǎng)絡(luò)時(shí),在辦公網(wǎng)使用navicat連接數(shù)據(jù)庫是連不上的,下面這篇文章主要給大家介紹了關(guān)于如何在Navicat新建連接、新建數(shù)據(jù)庫以及導(dǎo)入數(shù)據(jù)庫的相關(guān)資料,需要的朋友可以參考下
    2023-05-05
  • Hive數(shù)據(jù)去重的兩種方式?(distinct和group?by)

    Hive數(shù)據(jù)去重的兩種方式?(distinct和group?by)

    數(shù)據(jù)庫中表存在重復(fù)數(shù)據(jù),需要清理重復(fù)數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于Hive數(shù)據(jù)去重的兩種方式,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-01-01
  • 一步步教你使用Navicat工具創(chuàng)建MySQL數(shù)據(jù)庫連接

    一步步教你使用Navicat工具創(chuàng)建MySQL數(shù)據(jù)庫連接

    Navicat是一套快速、可靠并價(jià)格相當(dāng)便宜的數(shù)據(jù)庫管理工具,專為簡化數(shù)據(jù)庫的管理及降低系統(tǒng)管理成本而設(shè),下面這篇文章主要給大家介紹了關(guān)于如何使用Navicat工具創(chuàng)建MySQL數(shù)據(jù)庫連接的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • 淺談三種數(shù)據(jù)庫的?SQL?注入

    淺談三種數(shù)據(jù)庫的?SQL?注入

    本文主要介紹了淺談三種數(shù)據(jù)庫的SQL注入,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • 通過一分鐘快速了解索引技巧

    通過一分鐘快速了解索引技巧

    這篇文章主要給大家介紹了如何通過一分鐘快速了解索引技巧的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用索引具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 數(shù)據(jù)庫中的左連接(left join)和右連接(right join)區(qū)別

    數(shù)據(jù)庫中的左連接(left join)和右連接(right join)區(qū)別

    關(guān)于左連接和右連接總結(jié)性的一句話,左連接 where只影向右表,右連接where只影響左表
    2012-06-06

最新評論