1、查询一列或列的值
SELECT ClassType,DeviceName FROM Device
说明:从数据库中的Device表中查出ClassType和DeviceName两列。
2、查询语句
SELECT DISTINCT ClassType FROM Device
说明:从Device表中查询ClassType的值,不重复。
3、WHERE条件选择
SELECT DeviceName FROM Device WHERE DeviceName='Tp3000'
说明:常用的运算符有:=、>、<、<>(或!= 不等于)、>=、<=、BETWEEN、LIKE。
4、ADN和OR
SELECT DeviceName FROM Device WHERE DeviceName='Tp3000' AND ClassType=4
说明:AND和OR用在程序中表明条件的与和或。
5、排序
SELECT DeviceName,IPAddress FROM Device ORDER BY DeviceName,IPAddress
说明:选择DeviceName和IPAddress并对两列进行排序,先排DeviceName,DeviceName相同的再以IPAddress进行排序。
6、升序降序
SELECT DevcieName,IPAddress FROM Device ORDER BY Device DESC,IPAddress ASC
说明:选择DeviceName,IPAddress列对DeviceName进行降序排列,DeviceName相同,再对IPAddress进行升序排列。
7、插入一行
INSERT INTO Device(DeviceName,ClassType,IPAddress) VALUES (Tp6000,4,'10.11.172.10')
说明:
8、更新字段
UPDATE Device SET DeviceName='Tp8000',ClassType=4 WHERE IPAddress='10.11.189.23'
说明:
9、删除
DELETE FROM Device WHERE DeviceName='Tp2000'
说明:
10、删除全部
DELETE FROM Device
或者
DELETE * FROM Device
说明:
11、选择前N行或百分之N行
SELECT TOP 10 FROM Device
或
SELECT TOP 50 PERCENT FROM Device
说明:
12、模糊查询
SELECT FROM Device WHERE DeviceName LIKE 'TP%'
说明:%表示通配符,它代替零个、一个或多个字符;_代表一个字符;[abcde]表示匹配括号中的一个字符;[^abcde]表示不匹配括号中的一个字符。
13、IN
SELECT * FROM Device WHERE DeviceName in('Tp8000','Tp9000')
说明:
14、BETWEEN...AND...
SELECT * FROM Device WHERE DeviceName BETWEEN 'Tp8000' AND 'Tp9000'
说明:不同的数据库处理不同,有的结果可能是包含'Tp8000'和'Tp9000',有的则不包含。经测试sqlexpress 2005是包含的。
15、使用别名
SELECT DeviceName as name,IPAddress as address FROM Device
或
SELECT po.OrderID, p.LastName, p.FirstName
FROM Persons AS p, Product_Orders AS po
WHERE p.LastName='Adams' AND p.FirstName='John'
说明:上面一个使用了列的别名,下面一个使用了表的别名。
16、将表绑定在一起。
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons, Orders
WHERE Persons.Id_P = Orders.Id_P
或
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
INNER JOIN Orders
ON Persons.Id_P = Orders.Id_P
ORDER BY Persons.LastName
说明:JOIN: 如果表中有至少一个匹配,则返回行
LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
FULL JOIN: 只要其中一个表中存在匹配,就返回行
学习中,持续更新。。。。