當前位置:首頁 » 編程語言 » sql豎線是什麼意思
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql豎線是什麼意思

發布時間: 2022-06-13 17:37:26

㈠ PL/sql的SQL窗口多出了一條豎線,第一次用的時候沒有,不知道哪裡設置錯了,左側行號欄也多了一條豎線

右鍵-隔條

㈡ 關於sql雙豎線連接串

我在系統上用oracle測試了,你寫的語句不應該有引號
可能是由於你的 id 或 pass這兩列的某行上有空值
你可以這樣寫
select id|| pass as title
from news
where id is not null and pass is not null;
這樣可以把空值的排除掉

㈢ SQL數據橫列變豎列

以下方法適用於任意多的科目:
--先建立函數,功能是根據給出的姓名,到表中去查找所選科目及成績並橫向列示出來.
CREATE FUNCTION getcoldata
(@XM VARCHAR(18))
RETURNS varchar(1000)
AS
BEGIN
DECLARE @deli VARCHAR(2)
set @deli=' '
declare @f1 varchar(100),@F2 DECIMAL(12,1),@result varchar(1000),@sn0 int
set @result=''
declare ddcursor cursor for select 選修科目,成績 from 表名 where 姓名=@XM order by 選修科目
open ddcursor
fetch next from ddcursor into @f1,@F2
while @@fetch_status!=-1
begin
set @result=@result+@deli+isnull(@f1,'')+':'+ISNULL(CONVERT(VARCHAR,@F2),'')
fetch next from ddcursor into @f1,@F2
end
close ddcursor
deallocate ddcursor
return (@result)
end

GO

--使用方法:
select 姓名,科目及成績=dbo.getcoldata(姓名) from (SELECT DISTINCT 姓名 from 表名) a

結果是這樣的
姓名 科目與成績
張三 計算機:75 高等數學:80 物理:77
李四 高等數學:55 微積分:87
王五 語文:78

=============
我這么看您的問題:
1.查詢是用來輸出的,不是用來統計的:您的這種結果即使用分開欄位也是很不容易統計的,要想統計還是原表比較方便.
就是說:這種查詢結果更方便輸出\查看,原表更方便於作統計.
所以,我勸您,比較科學的作法是保留原表,可以方便的作出包括本查詢在內的各種查詢.而您如果只保留查詢後的表,即使用欄位是分開的,那麼將很難再作其它統計和查詢.因為數據太不規范.

2.可以輸出各門分開的EXCEL表:如果您想輸出到EXCEL表,您要以把函數中的分隔符改成逗點或製表符(CHAR(9)),直接存成CSV或XLS文檔就成了.
3.完全按照您的結果也能輸出.但今天我沒空了,給你個提示:
先看看我以前的回答中,有一些是關於加序號的,加上序號後就好說了.
===========
加到200分,我就開始為您作分開欄位的查詢.(辦法我知道,但是很麻煩啊)
===============================================
與您的要求完全相同的查詢:
為了清楚,先建立一個查詢,給每人的科目加序號,如果不理解,執行一下SELECT * FROM MYVIEWNAME就知道了:
=====================

視圖改一下:
create view myviewname
as
select 姓名,科目,成績,序號=(select count(1) from tablename a where a.姓名=b.姓名 and a.科目>=b.科目) from
(select * from tablename where 狀態='有效') --以子查詢替換了TABLENAME,夠直觀吧?
b --視圖加上了序號欄位
go

然後,這就是您要的查詢,根據每人所選科目的最大數,可以無限向後延伸,加入科目6,科目7等:
select a.姓名,
科目1=isnull(t1.科目,''),
成績1=isnull(t1.成績,''),
科目2=isnull(t2.科目,''),
成績2=isnull(t2.成績,''),

科目3=isnull(t3.科目,''),
成績3=isnull(t3.成績,''),

科目4=isnull(t4.科目,''),
成績4=isnull(t4.成績,''),

科目5=isnull(t5.科目,''),
成績5=isnull(t5.成績,'')
from (SELECT DISTINCT 姓名 from tablename) a
left join myviewname t1 on t1.姓名=a.姓名 and t1.序號=1
left join myviewname t2 on t2.姓名=a.姓名 and t2.序號=2
left join myviewname t3 on t3.姓名=a.姓名 and t3.序號=3
left join myviewname t4 on t4.姓名=a.姓名 and t4.序號=4
left join myviewname t5 on t5.姓名=a.姓名 and t5.序號=5

好了,加到200分再選擇正確答案!

㈣ sql查詢橫轉豎顯示

--建立測試數據
create table tb1
(
id varchar(20) not null,
value varchar(20) not null
)
go

insert into tb1
select '1','aa'
union all
select '1','bb'
union all
select '2','aaa'
go
--由於你這表裡沒有主健,可以用來做標識用,可以先生成一個臨時表,並加上自增欄位px用來做唯一標識列
select px=IDENTITY(INT,1,1),id,value
INTO #temptb
from tb1
go
select * from #temptb
go
--動態SQL
declare @sql varchar(8000)
set @sql = 'select'
select @sql = @sql + ',max(case px when ' +CONVERT(varchar(4),px)+ ' then value else '''' end) [' + id + ']'
from (select * from #temptb) a
set @sql = STUFF(@sql,7,1,' ') + ' from #temptb'
exec(@sql)
go
--靜態SQL
select max(case px when 1 then value else '' end) [1],
max(case px when 2 then value else '' end) [1],
max(case px when 3 then value else '' end) [2]
from #temptb
go
--刪除測試數據
DROP TABLE #temptb
go
DROP TABLE tb1

返回:

(所影響的行數為 3 行)

(所影響的行數為 3 行)

px id value
1 1 aa
2 1 bb
3 2 aaa

(所影響的行數為 3 行)

1 1 2
aa bb aaa

1 1 2
aa bb aaa

(所影響的行數為 1 行)

㈤ sqlserver 資料庫裡面的雙豎線是搞啥用的||

這是一個邏輯運算符or,是一個雙目運算符,左右兩邊若有一個為真,則結果為真。

㈥ Oracel sql developer窗口怎麼去掉那條豎線

你好,我看到這個帖子時間已經很久了,不知道現在問題的解決對你是否重要。不過還是希望能幫到其他遇到這個問題的朋友。

打開工具—>首選項—>代碼編輯器—>顯示,「顯示可見右邊距」復選框前面的勾去掉就OK了。

㈦ SQL語句里兩條豎線表示的是什麼意思 select * from tax s where s.YNSJE like '%'||s.tdzzs||'%';

連接詞符號,將這兩個字元串連接起來,類似一些語言的+,將一些字元串接起來.
這種一般在Oracle資料庫或者DB2資料庫上面得到體現。

㈧ 請教sql問題,高手回答啊!!!!!下面的語句啥意思,尤其那個雙豎杠...

雙豎杠是字元串連接符號
'GRANT SELECT ON ' || TABLE_NAME || ' TO BRANDON;'
相當於(假設TABLE_NAME的值為「表名」)
'GRANT SELECT ON 表名 TO BRANDON;'
這里因為表名是變數,所以只能寫成用||連接的形式。

其他是些設置顯示方面的設置
set heading off——不顯示每行的列名
set echo off——不重復顯示所要執行的sql語句
set feedback off——不顯示sql語句的運行結果
SPOOL GRANTS.SQL——將屏幕顯示的結果輸出到GRANTS.SQL文件

㈨ SQL中,有個豎杠表示意思如下第一行最右邊,還有那個<>表示啥意思可以不要嘛

<>表示可選項,
|表示分隔,或者的意思
就是說上面一句話代表兩句話,
ALTER TABLE table_name ADD column_name data_type;
ALTER TABLE table_name MODIFY column_name data_type;

㈩ sql語句里的<>,{},[],(),|是什麼含義

<> "不等於"
{} 不知道
[] sqlserver里表名,用戶名什麼的都用這個括起來
() 就是你知道的()
| 一個豎線不知道,兩根||是個連接符