A. sql查詢語句
SELECT語句的基本形式為
SELECT
[ALL|DISTINCT]<目標列表達式>[,<目標列表達式>···]
FROM
<表名或視圖名>[,<表名或視圖名>···]
[WHERE
<條件表達式>]
語句的功能是根據WHERE子句中的條件表達式,從基本表(或視圖)中找出滿足條件的元組,按SELECT子句中的目標列,選出元組中的目標列形成結果表。
SQL語句對資料庫的操作十分靈活方便,原因在於SELECT語句中的成分豐富多樣,有許多可選形式,尤其是目標列和目標表達式,下面用例子來詳細說明,例子涉及的是"學生-課程"資料庫,其關系模式集如下:
學生信息表Student(SNO,SNAME,SSEX,SBIRTHDAY
CLASS)
教師信息表Teacher(TNO,TNAME,TSEX,TBIRTHDAY,DEPART)
課程信息表Course(CNO,CNAME,TNO)
成績表Grade(SNO,CNO,DEGREE)
例題:查詢Student表所有學生信息。
SELECT
*
FROM
Student;/*選擇操作*/
例題:查詢Student表中所有學生的學號和姓名。
SELECT
SNO,SNAME
FROM
Student;/*投影操作*/
例題:查詢Grade表中成績在60到80之間的所有記錄。
SELECT
*
FROM
Grade
WHERE
degree
BETWEEN
60
AND
80;/*選擇操作*/
例題:查詢Grade表中成績為85、86、88的記錄。
SELECT
*
FROM
Grade
WHERE
degree
IN(85,86,88);/*選擇操作*/
例題:查詢所有學生的SNAME,CNAME和DEGREE。
SELECT
Student.SNAME,Course.CNAME,Grade.DEGREE
FROM
Student,Course,Grade
WHERE
Student.SNO
=
Grade.SNO,Grade.CNO
=
Course.CNO;/*連接操作*/
例題:查詢"張旭"教師任課的學生成績。
SELECT
CNO,SNO,DEGREE
FROM
Grade
WHERE
CNO=(SELECT
Course.CNO
FROM
Course,Teacher
WHERE
Course.TNO=Teacher.TNO
and
Teacher.TNAME="張旭")
此查詢操作為嵌套查詢。子查詢在上一級查詢處理之前求解,即嵌套查詢是從里向外處理的,這樣,外層查詢可以利用內層查詢的結果,在此例中首先執行子查詢:
SELECT
Course.CNO
FROM
Course,Teacher
WHERE
Course.TNO=Teacher.TNO
and
Teacher.TNAME="張旭"
獲得張旭老師講授課程的課程號(801003),然後執行外查詢:
SELECT
CNO,SNO,DEGREE
FROM
Grade
WHERE
CNO="801003"
獲得"張旭"教師任課的學生成績。
B. SQL的計算列表達式里怎樣調用其他表的列參與計算
沒有完全聽懂你的意思,如果要創建的話,應該添加約束
Alter table cpxs
add constraint FK_產品編號 foreign key(產品編號) references cp(產品編號)
C. sql如何查詢語句的格式怎麼寫
語句格式
SELECT
[ALL|DISTINCT]
<目標列表達式>
[,<目標列表達式>]
…
FROM
<表名或視圖名>[,
<表名或視圖名>
]
…
[
WHERE
<條件表達式>
]
[
GROUP
BY
<列名1>
[
HAVING
<條件表達式>
]
]
[
ORDER
BY
<列名2>
[
ASC|DESC
]
];
例:查詢所有年齡在20歲以下的學生姓名及其年齡。
SELECT
Sname,Sage
FROM
Student
WHERE
Sage
<
20;
D. 在關系資料庫標准語言SQL中,實現數據檢索的語句命令是什麼
Select 查詢語句
語法:SELECT [ALL|DISTINCT] <目標列表達式> [AS 列名][,<目標列表達式> [AS 列名] ...] FROM <表名> [,<表名>…]
[WHERE <條件表達式> [AND|OR <條件表達式>...]
[GROUP BY 列名 [HAVING <條件表達式>>
[ORDER BY 列名 [ASC | DESC>
解釋:[ALL|DISTINCT] ALL:全部; DISTINCT:不包括重復行
<目標列表達式> 對欄位可使用AVG、COUNT、SUM、MIN、MAX、運算符等
<條件表達式> 查詢條件 謂詞
比較 =、>,<,>=,<=,!=,<>,
確定范圍 BETWEEN AND、NOT BETWEEN AND
確定集合 IN、NOT IN
字元匹配 LIKE(「%」匹配任何長度,「_」匹配一個字元)、NOT LIKE
空值 IS NULL、IS NOT NULL
子查詢 ANY、ALL、EXISTS
集合查詢 UNION(並)、INTERSECT(交)、MINUS(差)
多重條件 AND、OR、NOT
<GROUP BY 列名> 對查詢結果分組
[HAVING <條件表達式>] 分組篩選條件
[ORDER BY 列名 [ASC | DESC> 對查詢結果排序;ASC:升序 DESC:降序
E. 急求Sql的getDate()用法
1、定義:
GETDATE() 函數從 SQL Server 返回當前的時間和日期。
2、語法:
CONVERT(data_type(length),data_to_be_converted,style)
data_type(length) 規定目標數據類型(帶有可選的長度)。data_to_be_converted 含有需要轉換的值。style 規定日期/時間的輸出格式。
3、例子:
select getdate() as sysdate;
2018-08-13 14:11:46.923
--返回系統時間,包含日期和時間
(5)什麼是列表達式sql擴展閱讀
具體應用:
Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06
Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16
Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06
Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06
Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06
Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06
Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06
Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46
Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM
Select CONVERT(varchar(100), GETDATE(), 10): 05-16-06
F. 急求Sql的getDate()用法
DATEPART
(
datepart
,
date
)
datepart
是將為其返回
integer
的
date(日期或時間值)的一部分。下表列出了所有有效的
datepart
參數。用戶定義的變數等效項是無效的。
datepart
縮寫
year
yy,
yyyy
quarter
qq,
q
month
mm,
m
dayofyear
dy,
y
day
dd,
d
week
wk,
ww
weekday
dw
hour
hh
minute
mi,
n
second
ss,
s
millisecond
ms
microsecond
mcs
nanosecond
ns
TZoffset
tz
ISO_WEEK
isowk,
isoww
date
是一個表達式,可以解析為
time、date、smalldatetime、datetime、datetime2
或
datetimeoffset
值。date
可以是表達式、列表達式、用戶定義的變數或字元串文字。