1. 程式人生 > >SQL基本語法

SQL基本語法

1.按姓氏筆畫排序:
Select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as //從少到多
2.資料庫加密:
select encrypt('原始密碼')
select pwdencrypt('原始密碼')
select pwdcompare('原始密碼','加密後密碼') = 1--相同;否則不相同 encrypt('原始密碼')
select pwdencrypt('原始密碼')
select pwdcompare('原始密碼','加密後密碼') = 1--相同;否則不相同
3.取回表中欄位:
declare @list varchar(1000),
@sql nvarchar(1000)
select @
[email protected]
+','+b.name from sysobjects a,syscolumns b where a.id=b.id and a.name='表A'
set @sql='select '+right(@list,len(@list)-1)+' from 表A'
exec (@sql)
4.檢視硬碟分割槽:
EXEC master..xp_fixeddrives
5.比較A,B表是否相等:
if (select checksum_agg(binary_checksum(*)) from A)
     =
    (select checksum_agg(binary_checksum(*)) from B)
print '相等'
else
print '不相等'
6.殺掉所有的事件探察器程序:
DECLARE hcforeach CURSOR GLOBAL FOR SELECT 'kill '+RTRIM(spid) FROM master.dbo.sysprocesses
WHERE program_name IN('SQL profiler',N'SQL 事件探查器')
EXEC sp_msforeach_worker '?'
7.記錄搜尋:
開頭到N條記錄
Select Top N * From 表
-------------------------------
N到M條記錄(要有主索引ID)
Select Top M-N * From 表 Where ID in (Select Top M ID From 表) Order by ID   Desc
----------------------------------
N到結尾記錄
Select Top N * From 表 Order by ID Desc
案例
例如1:一張表有一萬多條記錄,表的第一個欄位 RecID 是自增長欄位, 寫一個SQL語句,找出表的第31到第40個記錄。
 select top 10 recid from A where recid not  in(select top 30 recid from A)
分析:如果這樣寫會產生某些問題,如果recid在表中存在邏輯索引。
 select top 10 recid from A where……是從索引中查詢,而後面的select top 30 recid from A則在資料表中查詢,這樣由於索引中的順序有可能和資料表中的不一致,這樣就導致查詢到的不是本來的欲得到的資料。
解決方案
1, 用order by select top 30 recid from A order by ricid 如果該欄位不是自增長,就會出現問題
2, 在那個子查詢中也加條件:select top 30 recid from A where recid>-1
例2:查詢表中的最後以條記錄,並不知道這個表共有多少資料,以及表結構。
set @s = 'select top 1 * from T   where pid not in (select top ' + str(@count-1) + ' pid  from T)'
print @s      exec  sp_executesql  @s
9:獲取當前資料庫中的所有使用者表
select Name from sysobjects where xtype='u' and status>=0
10:獲取某一個表的所有欄位
select name from syscolumns where id=object_id('表名')
select name from syscolumns where id in (select id from sysobjects where type = 'u' and name = '表名')
兩種方式的效果相同
11:檢視與某一個表相關的檢視、儲存過程、函式
select a.* from sysobjects a, syscomments b where a.id = b.id and b.text like '%表名%'
12:檢視當前資料庫中所有儲存過程
select name as 儲存過程名稱 from sysobjects where xtype='P'
13:查詢使用者建立的所有資料庫
select * from master..sysdatabases D where sid not in(select sid from master..syslogins where name='sa')
或者
select dbid, name AS DB_NAME from master..sysdatabases where sid <> 0x01
14:查詢某一個表的欄位和資料型別
select column_name,data_type from information_schema.columns
where table_name = '表名'
15:不同伺服器資料庫之間的資料操作
--建立連結伺服器
exec sp_addlinkedserver   'ITSV ', ' ', 'SQLOLEDB ', '遠端伺服器名或ip地址 '
exec sp_addlinkedsrvlogin  'ITSV ', 'false ',null, '使用者名稱 ', '密碼 '
--查詢示例
select * from ITSV.資料庫名.dbo.表名
--匯入示例
select * into 表 from ITSV.資料庫名.dbo.表名
--以後不再使用時刪除連結伺服器
exec sp_dropserver  'ITSV ', 'droplogins '

相關推薦

PL/SQL 基本語法

PL/SQL介紹 PL/SQL是Oracle對標準資料庫語言SQL的過程化擴充,它將資料庫技術和過程化程式設計語言聯絡起來,是一種應用開發語言,可使用迴圈,分支處理資料,將SQL的資料操縱功能與過程化語言資料處理功能結合起來。PL/SQL的使用,使SQL成為一

HIVE SQL 基本語法

1.DDL 操作 1.建表 2.3.建立簡單表 4.建立外部表 5.建分割槽表 6.建Bucket表 7.建立表並建立索引欄位ds 8.複製一個空表 9.顯示所有表 10.按正條件正則表示式顯示錶 11.修改表結構 12.表新增一列 13.新增一列並增加列欄位註釋

SQL基本語法—(檢視、資料庫安全與角色)

檢視 一、定義檢視   語法:            CREATE  VIEW <檢視名>  [(<列名>  [,<列名>]…)] AS  <子查詢>[

SQL基本語法

1.按姓氏筆畫排序: Select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as //從少到多 2.資料庫加密: select encrypt('原始密碼') select pwdencrypt('原始密

SQL語句基本語法

sql首先寫入可顯示中文代碼set character_set_client=gbk; set character_set_results=gbk;或只輸一句 set names gbk;創建數據庫create database 庫名;查詢現有數據局show databases;刪除數據庫drop data

PL/SQL簡介與基本語法

rep round 子程序 package 符號 編程語言 類型 運算符 授權 PL/SQL的簡介: PLSQL 是Oracle公司在SQL基礎上進行擴展而成的一種過程語言。PLSQL提供了典型的高級語言特 性,包括封裝,例外處理機制,信息隱藏,面向對象等;並

SQL基本語法練習

col to_char 通用 模糊 工資 轉換成 截斷 使用 round select EMPNO,SAL from emp where SAL BETWEEN 1000 and 2000--從enp中獲取sal中1000到2000之間的數據 select ENAME,S

sql(SqlServer)編程基本語法

記錄 uniq clas login lai cell 數據 sqlserver add 一、定義變量 --簡單賦值 declare @a int set @a=5 print @a --使用select語句賦值 declare @user1 nvarc

SQL記錄-PLSQL基本語法與數據類型

屬性 lean eric 數據庫 組成 -- 小數 cte welcome PL/SQL基本語法 PL/SQL是一種塊結構的語言,這意味著PL/SQL程序被劃分和編寫代碼的邏輯塊。每塊由三個子部分組成: S.N.段和說明 1 聲明 此部分開頭使用關鍵字DECLARE。

MySQL資料庫學習(一)SQL語言基本語法

一、什麼是資料庫 資料庫(Database)是按照資料結構來組織、儲存和管理資料的倉庫。 每個資料庫都有一個或多個不同的API用於建立,訪問,管理,搜尋和複製所儲存的資料。 通常使用關係型資料庫管理系統(RDBMS)來儲存和管理的大資料量。 所謂的關係型資料庫,是建立在關係模

18 12 4 SQL基本 語法

資料庫的基本語法       -- 資料庫的操作 -- 連結資料庫 mysql -uroot -p mysql -uroot -pmysql -- 退出資料庫 exit/quit/ctrl+d -- s

SQL-基本學習I-基本SQL語法與概念

目錄 1檢索 1.1基本檢索 1.1.1檢索單個列 1.1.2檢索多個列 1.1.3檢索所有列 1.1.4檢索不同的值 1.1.5限制結果

sql server 儲存過程基本語法(轉)

1 一、定義變數 2 --簡單賦值 3 declare @a int 4 set @a=5 5 print @a 6 7 --使用select語句賦值 8 declare @user1 nvarchar(50) 9 select @user1='張三'

mysql:day1--sql基礎(基本語法及常識)

SQL基礎: 1、SQL語言都基於SQL92標準,但各資料庫之間又存在差異。目前最新的標準為SQL99,它同樣相容SQL92。 2、SQL-Structured Query Language結構化查詢語言。 2.1、DDL – 資料定義語言Data

sql server if巢狀基本語法

例子: if 1<>1begin   if  5<0      begin            print('失敗')       end       else begin            print('chengong')             

sql 表連線基本語法

SQL連線可以分為內連線、外連線、交叉連線。 1.內連線:內連線查詢操作列出與連線條件匹配的資料行,它使用比較運算子比較被連線列的列值。 1.1 select * from Table1 as a, Table2 as b where a.id=

SQL大全基本語法

rop cas 成績 dbn 拷貝 文章 光盤 復制表 rt+ 一、基礎 1、說明:創建數據庫 CREATE DATABASE database-name 2、說明:刪除數據庫 drop database dbname 3、說明:備份sql server ---

黑馬程式設計師--SQL Server 基本語法、基礎知識

-------------------------------------------- ASP.Net+Android+IO開發、.Net培訓、期待與您交流! -----------------------------------                    

動態sql語句基本語法--Exec與Exec sp_executesql 的區別

動態sql語句基本語法    1   :普通SQL語句可以用Exec執行    eg:       Select   *   from   tableName                      Exec( 'select   *   from   tableName ')               

T-SQL 高階程式設計(基本語法

T-SQL 高階程式設計 /*-變數應用-*/ --以標記為字首 --以標記為字首 --區域性變數宣告 declare @ --區域性變數賦值:使用語句或語句 --set 賦值語句一般賦給變數指定的資料常量 set @ = --sel