亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

SQL?Server數(shù)據(jù)表模糊查詢(like用法)以及查詢函數(shù)詳解

 更新時(shí)間:2024年05月28日 11:47:00   作者:葡萄架子  
使用SQL Server查詢時(shí)經(jīng)常會(huì)使用模糊查詢,需要查詢包含的指定字符串內(nèi)容,這篇文章主要給大家介紹了關(guān)于SQL?Server數(shù)據(jù)表模糊查詢(like用法)以及查詢函數(shù)的相關(guān)資料,需要的朋友可以參考下

一、模糊查詢(like)

在SQL Server Management Studio (SSMS) 中,進(jìn)行模糊查詢主要是通過使用like操作符來實(shí)現(xiàn)的。like操作符用于在where語句中搜索列中具有指定模式的數(shù)據(jù)。
我們?cè)诤唵卫又衼砹私猓?/p>

  • % 通配符:表示任意數(shù)量的字符。

    select * from table_name where column_name like '%pattern%';
    

    這個(gè)例子會(huì)選擇column_name列中包含"pattern"這個(gè)詞的所有記錄,就是不管內(nèi)容是啥,只要里面包含pattern就會(huì)被查詢到。

  • _ 通配符:表示單個(gè)字符。

    select * from table_name where column_name like '_pattern%';
    

    這個(gè)例子會(huì)選擇column_name列中以任意單個(gè)字符開頭,后面跟著"pattern"的所有記錄。比如:apattern、bpattern

  • [] 字符集:匹配括號(hào)內(nèi)的任意單個(gè)字符。

    select * from table_name where column_name like '[a-c]pattern%';
    

    這個(gè)例子會(huì)選擇column_name列中以"a"、"b"或"c"開頭,后面跟著"pattern"的所有記錄。

  • [^] 或 [!] 負(fù)字符集:不匹配括號(hào)內(nèi)的任意單個(gè)字符。

    select * from table_name where column_name like '[^a-c]pattern%';
    

    這個(gè)例子會(huì)排除column_name列中以"a"、"b"或"c"開頭的記錄,但會(huì)選擇以其他字符開頭后面跟著"pattern"的所有記錄。

  • in 字符集:不匹配括號(hào)內(nèi)的任意單個(gè)字符。in 操作符允許在where子句中指定多個(gè)值,用來測(cè)試某個(gè)列的值是否包含在指定的值列表中。如果列的值匹配列表中的任意一個(gè)值,那么這個(gè)記錄就會(huì)被選中。

select StudentName,StudentAddress,Birthday from Students
where StudentName in('王小二','小丹')

這條語句選取名字為“王小二”或“小丹”的學(xué)生的名字、地址和出生日期。

使用like操作符時(shí),要注意%_可以放在模式的任何位置,并且可以使用多個(gè)通配符來構(gòu)造復(fù)雜的搜索模式。此外,模糊查詢可能會(huì)影響數(shù)據(jù)庫查詢性能,特別是當(dāng)通配符出現(xiàn)在模式的開始時(shí),因?yàn)檫@會(huì)阻止SQL Server使用索引進(jìn)行搜索。

二、查詢函數(shù)

我們先來匯總一些比較常用的函數(shù)
在SQL Server Management Studio中,可以使用多種內(nèi)置的查詢函數(shù)來執(zhí)行數(shù)據(jù)檢索和轉(zhuǎn)換。這些函數(shù)屬于不同的類別,如字符串函數(shù)、數(shù)值函數(shù)、日期和時(shí)間函數(shù)、轉(zhuǎn)換函數(shù)等。以下是一些常用的SQL Server查詢函數(shù)的分類和例子:

  • 字符串函數(shù):

    • len(string): 返回字符串的長度。
    • charindex(substring, string): 返回子字符串在字符串中的位置。
    • substring(string, start, length): 返回字符串的一個(gè)子字符串。
    • replace(string, old_substring, new_substring): 替換字符串中的所有指定子字符串。
    • left(string, number_of_chars): 返回字符串左側(cè)的指定數(shù)量的字符。
    • right(string, number_of_chars): 返回字符串右側(cè)的指定數(shù)量的字符。
    • lower(string): 將字符串轉(zhuǎn)換成小寫。
    • upper(string): 將字符串轉(zhuǎn)換成大寫。
    • trimi(string): 去掉字符串左側(cè)的空格。
    • rtrim(string): 去掉字符串右側(cè)的空格。
    • concat(string1, string2, ...): 連接兩個(gè)或多個(gè)字符串。
  • 數(shù)值函數(shù):

    • abs(number): 返回?cái)?shù)字的絕對(duì)值。
    • floor(number): 返回小于或等于指定數(shù)字的最大整數(shù)。
    • ceiling(number): 返回大于或等于指定數(shù)字的最小整數(shù)。
    • round(number, decimals): 返回?cái)?shù)字四舍五入到指定的小數(shù)位數(shù)后的值。
    • SUM(column): 返回某列數(shù)值總和。
    • AVG(column): 返回某列的平均值。
    • MIN(column): 返回某列的最小值。
    • MAX(column): 返回某列的最大值。
      舉個(gè)例子:比如我們有一個(gè)統(tǒng)計(jì)學(xué)生分?jǐn)?shù)的表ScoreList
select sum(Csharp) as C# 總成績 from ScoreList
select 總?cè)藬?shù)=count(*)from Students

select MAX(Csharp) as C#最高,MIN(Csharp) as C#最低分,AVG(Csharp) as C#平均分 from ScoreList

這些SQL查詢語句用于從數(shù)據(jù)庫表中提取特定的統(tǒng)計(jì)信息:

select sum(Csharp) as C# 總成績 from ScoreList

這個(gè)查詢計(jì)算 ScoreList 表中 Csharp 列(代表學(xué)生的C#成績)的值的總和,并將結(jié)果命名為 C# 總成績。查詢的結(jié)果將是所有記錄中C#成績的總和。

select 總?cè)藬?shù)=count(*) from Students

這個(gè)查詢計(jì)算 Students 表中的記錄數(shù),即學(xué)生總數(shù),并將這個(gè)數(shù)命名為 總?cè)藬?shù)count(*) 函數(shù)計(jì)算表中的記錄總數(shù),包括所有的行,無論列值是否為NULL。

select MAX(Csharp) as C#最高,MIN(Csharp) as C#最低分,AVG(Csharp) as C#平均分 from ScoreList

這個(gè)查詢從 ScoreList 表中提取三個(gè)統(tǒng)計(jì)數(shù)據(jù):

  • MAX(Csharp) as C#最高:C#成績的最高值,結(jié)果列命名為 C#最高。
  • MIN(Csharp) as C#最低分:C#成績的最低值,結(jié)果列命名為 C#最低分
  • AVG(Csharp) as C#平均分:C#成績的平均值,結(jié)果列命名為 C#平均分
  • 日期和時(shí)間函數(shù):

    • getdate(): 返回當(dāng)前系統(tǒng)的日期和時(shí)間。
    • datepart(part, date): 返回日期的指定部分(如年、月、日)。
    • datediff(part, startdate, enddate): 返回兩個(gè)日期之間的差異。
    • dateadd(part, number, date): 在日期上添加指定的時(shí)間間隔。
  • 轉(zhuǎn)換函數(shù):

    • cast(expression AS data_type): 將表達(dá)式轉(zhuǎn)換為指定的數(shù)據(jù)類型。
    • convert(data_type(length), expression, style): 轉(zhuǎn)換數(shù)據(jù)類型,并可以使用風(fēng)格參數(shù)。
  • 聚合函數(shù):

    • count(*): 計(jì)算表中的記錄數(shù)。
    • cout(column): 計(jì)算某列非NULL值的數(shù)目。
    • group by: 用于結(jié)合聚合函數(shù),按一個(gè)或多個(gè)列對(duì)結(jié)果集進(jìn)行分組。
  • 其他有用函數(shù):

    • isnull(check_expression, replacement_value): 檢查一個(gè)表達(dá)式是否為null,如果是,則返回替代值。
    • coalesce(expression1, expression2, ...): 返回參數(shù)列表中第一個(gè)非NULL表達(dá)式。

這些函數(shù)可以在查詢中單獨(dú)使用,或者結(jié)合其他SQL語句來提高數(shù)據(jù)處理的能力和靈活性。通過這些函數(shù),可以對(duì)數(shù)據(jù)進(jìn)行有效的處理和轉(zhuǎn)換,以滿足各種復(fù)雜的業(yè)務(wù)邏輯需求。

總結(jié)

到此這篇關(guān)于SQL Server數(shù)據(jù)表模糊查詢(like用法)以及查詢函數(shù)的文章就介紹到這了,更多相關(guān)SQLServer數(shù)據(jù)表模糊查詢內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論