sql查詢語句怎麼寫
VF常用SQL語句大全
SQL是結構化查詢語言,查詢是SQL語言的重要組成部分,但不是全部,SQL還包括數據定義,數據操縱和數據控制功能等部分.如今SQL已成為關係數據庫的標準數據語言,所以現在的關係數據庫管理系統都支持SQL.FOXPRO從2.5 FOR DOS版式就開始支持SQL,現在VISUAL FOXPRO當然在之方面更加完善,以下是VF經常用到SQL語句.
--語 句 功 能
--數據操作
SELECT --從數據庫表中檢索數據行和列
INSERT --向數據庫表添加新數據行
DELETE --從數據庫表中刪除數據行
UPDATE --更新數據庫表中的數據
--數據定義
CREATE TABLE --創建一個數據庫表
DROP TABLE --從數據庫中刪除表
ALTER TABLE --修改數據庫表結構
CREATE VIEW --創建一個視圖
DROP VIEW --從數據庫中刪除視圖
CREATE INDEX --為數據庫表創建一個索引
DROP INDEX --從數據庫中刪除索引
CREATE PROCEDURE --創建一個存儲過程
DROP PROCEDURE --從數據庫中刪除存儲過程
CREATE TRIGGER --創建一個觸發器
DROP TRIGGER --從數據庫中刪除觸發器
CREATE SCHEMA --向數據庫添加一個新模式
DROP SCHEMA --從數據庫中刪除一個模式
CREATE DOMAIN --創建一個數據值域
ALTER DOMAIN --改變域定義
DROP DOMAIN --從數據庫中刪除一個域
--數據控制
GRANT --授予用户訪問權限
DENY --拒絕用户訪問
REVOKE --解除用户訪問權限
--事務控制
COMMIT --結束當前事務
ROLLBACK --中止當前事務
SET TRANSACTION --定義當前事務數據訪問特徵
--程序化SQL
DECLARE --為查詢設定遊標
EXPLAN --為查詢描述數據訪問計劃
OPEN --檢索查詢結果打開一個遊標
FETCH --檢索一行查詢結果
CLOSE --關閉遊標
PREPARE --為動態執行準備SQL 語句
EXECUTE --動態地執行SQL 語句
DESCRIBE --描述準備好的查詢
---局部變量
declare @id char(10)
--set @id = 10010001
select @id = 10010001
---全局變量
---必須以@@開頭
希望對你有幫助~~~
2. sql 查詢語句怎麼寫MS SQL:
select * from customer
where Year(getdate()) - Year(birthday) between 20 and 40
Access:
select * from customer
where Year(Now()) - Year(birthday) between 20 and 40
Orcale:
select * from customer
where to_number(to_char(sysdate,'yyyy')) - to_number(to_char(birthday,'yyyy')) between 20 and 40
3. 此sql查詢語句如何寫select 表一.id,表二.大寫 from 表一 left join 表二 on 表一.小寫列=表二.小寫列
那你就用right join 的效果呢
你看你的表結果是哪個導致的 重複 使用 distinct 熟悉清楚重複行不就可以了
select distinct autoid,IA_Subsidiary.cpzid,gl_accvouch.ino_id from IA_Subsidiary join gl_accvouch on IA_Subsidiary.cpzid=gl_accvouch.coutno_id where iperiod=4 and csign='轉' and ino_id=231
再select 後加個 distinct
4. SQL 查詢語句的寫法select * form 表
where [YEAR]=case month(getdate())
when 1 then year(getdate())-1
else year(getdate())
end
and [MONTH]=case month(getdate())
when 1 then 12
else month(getdate())-1
end
and name like '?12%'
5. 求助:sql查詢語句怎麼寫將同住人名兩兩相對列示出來
顯示結果如下:
旅客姓名,旅客身份證號,房間號,入住時間,賓館名稱,同住姓名,同住身份證號,同住入住時間
查詢語句如下:
select a.旅客姓名,a.旅客身份證號,a.房間號,a.入住時間,a.賓館名稱,同住姓名=b.旅客姓名,同住身份證號=b.旅客身份證號,同住入住時間=b.入住時間
from tablename a left join tablename b on a.賓館名稱=b.賓館名稱 and a.房間號=b.房間號 where datediff(s,a.入住時間,b.入住時間)
6. 這種SQL(查詢所有)語句該怎麼寫這個沒有直接的解決辦法,只能曲線解決
用exec
create procedure mypro(@table varchar(100)) as
begin
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[temp]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[temp]
declare @str varchar(5000),@sql varchar(300),@yuju varchar(1000)
set @sql='select yuju into temp from '+@table --這裏先生成動態語句,把表名間接改成temp
exec( @sql)
declare c cursor for select yuju from temp --這裏直接寫成temp
open c
fetch c into @yuju
while @@fetch_status=0
begin
exec(@yuju)
print @yuju
fetch c into @yuju
end
close c
deallocate c
return
end