『壹』 如何利用sql語句查看某一個表全部列或單個列的屬性
exec sp_columns 表名 --返回某個表列的信息
exec sp_help 表名 --查看某個表的所有信息
這些是系統的存儲過程
例如:
用SQL語句查詢一個數據表所有欄位的類型可以參考下面的代碼:
SELECT
name AS column_name,TYPE_NAME(system_type_id) AS column_type,
(1)sql查詢顯示列擴展閱讀:
更新:update table1 set field1=value1 where 范圍
查找:select * from table1 where field1 like 』%value1%』 (所有包含『value1』這個模式的字元串)
排序:select * from table1 order by field1,field2 [desc]
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
『貳』 SQL語句怎麼對單個欄位去重,並且要顯示所有列
1、打開SQLyog,在其中新建一個資料庫「student」,如下圖所示:
『叄』 在SQL里,我查詢數據時,想按某個條件查詢顯示A,B列。
select A列,case when A列=1 then -1*B列 ELSE B列 END
from 表
『肆』 sql,2005里,如何將查詢的結果分兩列顯示.
這個比較簡單吧
先做一個子查詢,把你需要的數據查出來,另外再新加一個欄位,比如想第一列顯示的固定為1,第二列的固定為2
然後在外面再套一層,case
when
xx=1
then
查詢出來的欄位
else
''
end
as
第一列
同樣的方法就得到第二列了。
最後,再根據你想要的鍵值
group
by
一下
『伍』 如何讓PL/SQL的SQL窗口顯示列號
PL/SQL中不能顯示列號,只能顯示行號。
方法:
1、登錄PL/SQL。
2、依次點擊工具——首選項
『陸』 sql 查詢時要返回結果的時候再增加一列來顯示結果 語句怎麼寫啊
可以參考下面的代碼:
代碼中'成績'是新增的列,按用戶的要求再改改就行
SELECT
Title,
'成績' =
CASE
WHEN price < 60 THEN '不及格'
ELSE '及格'
FROM titles
(6)sql查詢顯示列擴展閱讀:
sql參考語句
添加主鍵
Alter table tabname add primary key(col)
刪除主鍵
Alter table tabname drop primary key(col)
創建索引
create [unique] index idxname on tabname(col….)
創建視圖
create view viewname as select statement
『柒』 sql 查詢顯示虛擬列
有點類似於分頁存儲過程裡面的代碼.with tempTable as ( select * , Row_number() over (order by 要排序的欄位名) as rowNumber from 表名 where 1 = 1)select * from tempTable --注意後面的條件查詢 where 1 = 1可不寫也可以進行擴展.
--select * from tempTable 後面可以按虛擬的列標識查詢例如改成select * from tempTable where rowNumber between 1 and 10 是不是要做分頁的效果呢?2000的話會比較麻煩,不過還是可以做的,select top 1 * from table
where 某欄位 not in (select top(分頁的條目) 某欄位 from table)這樣就能達到效果,不過效率不高。。。針對樓主的虛擬列的標識,我寫了個存儲過程,希望對樓主有所幫助吧~是以northwind為實例庫的,有這個資料庫吧select * into ##temp from Categories
go
alter table ##temp add row int
go
create proc row_number
as
begin
declare @id int
set @id=0
while @id < (select count(*) from ##temp)
begin
set @id=@id+1
update ##temp set row=@id where CategoryId=(select top 1 CategoryId from ##temp
where CategoryId not in (select top(@id-1) CategoryId from ##temp))
end
end
go
exec row_number
go
select * from ##temp經測試,可行。。。不過效率不高,個人不推薦使用。。
『捌』 sql查詢結果怎麼按指定列數依次排列
with tmp as
(
select row_number() over(order by FENTRYID) rn,FENTRYID
from 表
)
select t1.FENTRYID as FENTRYID1,t2.FENTRYID as FENTRYID2,t3.FENTRYID as FENTRYID3
from tmp t1
left join tmp t2 on t2.rn=t1.rn+1
left join tmp t3 on t3.rn=t1.rn+2
where t1.rn%3=1
order by t1.FENTRYID
這是轉成3列的,如果列數要變化,上面的語句要調整
『玖』 sql 查詢 一個表中某幾列數據
sql查詢一個表中某幾列數據語法:
1、SELECT 列名稱1、列名稱2.....列名稱n FROM 表名稱 WHERE 列 運算符 值;
2、SELECT * from 表名稱 where 列 運算符 值(列 運算符 值,這個可以是多個,中間用and隔開)。
解析:使用sql查詢時,作為查詢的篩選限制條件,只需要對有限制要求的欄位使用where進行限制即可,無需對非限制要求的欄位進行特別限制。
所以你的語句可以修改為"select * from test1 where id=『2』;"就可以了。其中,你原語句中的name=全部和age=全部,屬於多餘的,如果不對name和age欄位做任何限制的話,sql本身就是會查詢全部name和age,而無需你另外加設條件。
再比如你這樣寫:「select * from test1;」在不加任何where條件的情況下,這個sql查詢本身就是查詢全部數據。而當加入id='2'之後,就限制了只能返回id值是2的某一條或者多條數據。
通過幾個例子來加深一下對上表各查詢條件使用的理解:
1、查詢計算機科學系全體學生的名單;
SELECT Sname FROM StudentWHERE Sdept='CS';
2、查詢所有年齡在20歲以下的學生姓名及其年齡;
SELECT Sname,Sage FROM StudentWHERE Sage<20;
3、查詢考試成績不合格的學生的學號;
SELECT DISTINCT Sno FROM SCWHERE Grade<60;
4、查詢年齡在20~23歲之間的學生的姓名、系別和年齡;
SELECT Sname,Sdept,Sage FROM Student WHERE Sage BETWEEN 20 AND 23;
5、查詢年齡在20~23歲之間的學生的姓名、系別和年齡;
SELECT Sname,Sdept,Sage FROM StudentWHERE Sage NOT BETWEEN 20 AND 23;
6、查詢計算機科學系(CS)、數學系(MA)和信息系(IS)學生的姓名、系別和年齡。
SELECT Sname,Ssex FROM Student WHERE Sdept IN('CS','MA','IS')。
『拾』 如何顯示SQL資料庫表中某一行某一列的值
第一個:查詢下拉框的選項
select a.Name,a.ID form TBMenu a where a.IsUsed=1
查詢Name和ID: Name為顯示文字,ID用於在選擇這個選項後根據ID值進行下一步的查詢
在你後台執行SQL的時候返回一個dateset 然後用combobox的datasuoce綁定,怎麼綁需要自己找例子,很好的學習過程。
第二個:根據選擇的菜單查詢需要的信息
select * from Infomations a where a.MenuID=ID(選擇下拉框選項對應的ID值)
在下拉框中選擇「主食」,點擊查詢按鈕,肯定是要查詢和主食相關的數據,那就通過主食對應的ID(也就是下拉框綁定的時候查詢的ID)去資料庫對應的關聯表中查詢對應的信息。
這個地方你沒有描述清楚你想實現的效果所以,根據你在上面補充的內容推測出的這些東西。