第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 学习 SQL 语句 - Select(3): 条件查询与模糊查询

学习 SQL 语句 - Select(3): 条件查询与模糊查询

时间:2020-09-26 20:31:55

相关推荐

学习 SQL 语句 - Select(3): 条件查询与模糊查询

Where 用来指定查询条件;

Like 和 Not Like 来指定模糊条件;

模糊条件中:

_ 表示任一字符;

% 表示任一字符串;

[] 表示一个集合.

本例效果图:

代码文件:

unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls, ExtCtrls, Grids, DBGrids, DB, ADODB;typeTForm1 = class(TForm)DBGrid1: TDBGrid;DataSource1: TDataSource;ADODataSet1: TADODataSet;Panel1: TPanel;Button1: TButton;Button2: TButton;Button3: TButton;Button4: TButton;Button5: TButton;Button6: TButton;Button7: TButton;Button8: TButton;Button9: TButton;Button10: TButton;Button11: TButton;Button12: TButton;Button13: TButton;Button14: TButton;procedure FormCreate(Sender: TObject);procedure Button1Click(Sender: TObject);procedure Button2Click(Sender: TObject);procedure Button3Click(Sender: TObject);procedure Button4Click(Sender: TObject);procedure Button5Click(Sender: TObject);procedure Button6Click(Sender: TObject);procedure Button7Click(Sender: TObject);procedure Button8Click(Sender: TObject);procedure Button9Click(Sender: TObject);procedure Button10Click(Sender: TObject);procedure Button11Click(Sender: TObject);procedure Button12Click(Sender: TObject);procedure Button13Click(Sender: TObject);procedure Button14Click(Sender: TObject);end;varForm1: TForm1;implementation{$R *.dfm}//country 表中 Area<200000 的记录procedure TForm1.Button1Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Area<200000';Open;end;end;//country 表中 Continent="South America" 的记录; 字符串值应该在引号中(单引号、双引号均可).procedure TForm1.Button2Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Continent="South America"';Open;end;end;//country 表中 Name="Cuba" 或者 Name="Peru" 的记录procedure TForm1.Button3Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Name="Cuba" or Name="Peru"';Open;end;end;//country 表中 Continent="South America" 并且 Area>1000000 的记录procedure TForm1.Button4Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Continent="South America" and Area>1000000';Open;end;end;//country 表中 Name 是 c 开头的记录; 其中的 % 表示任意字符串procedure TForm1.Button5Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Name LIKE "c%"';Open;end;end;//country 表中 Name 是 b 或 c 开头的记录; 可以用 "," 隔开更多条件procedure TForm1.Button6Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Name LIKE "[b,c]%"';Open;end;end;//country 表中 Name 是 a 或 b 或 c 开头的记录procedure TForm1.Button7Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Name LIKE "[a-c]%"';Open;end;end;//country 表中 Name 不是 a 或 b 或 c 或 m 开头的记录procedure TForm1.Button8Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Name NOT LIKE "[a-c,m]%"';Open;end;end;//country 表中 Name 不是 a 或 b 或 c 开头的记录procedure TForm1.Button9Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Name NOT LIKE "[a-c]%"';Open;end;end;//country 表中 Name 包含 er 的记录procedure TForm1.Button10Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Name LIKE "%er%"';Open;end;end;//country 表中 Name 包含空格的记录procedure TForm1.Button11Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Name LIKE "% %"';Open;end;end;//country 表中 Name 第二个字符任意, 但第一字符是 p、第三字符是 r 的记录; "_" 表示任意字符procedure TForm1.Button12Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Name LIKE "p_r%"';Open;end;end;//country 表中 Name 是 4 个字符的记录procedure TForm1.Button13Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Name LIKE "____"';Open;end;end;//country 表中 Name 是 4 个字符, 但最后是 a 结尾的记录procedure TForm1.Button14Click(Sender: TObject);beginwith ADODataSet1 do beginClose;CommandText := 'SELECT * FROM country WHERE Name LIKE "___a"';Open;end;end;procedure TForm1.FormCreate(Sender: TObject);varmdbFile: string;beginmdbFile := GetEnvironmentVariable('COMMONPROGRAMFILES');mdbFile := mdbFile + '\CodeGear Shared\Data\dbdemos.mdb';ADODataSet1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' +mdbFile + ';Persist Security Info=False';DBGrid1.DataSource := DataSource1;DataSource1.DataSet := ADODataSet1;end;end.

窗体文件:

object Form1: TForm1Left = 0Top = 0Caption = 'Form1'ClientHeight = 407ClientWidth = 626Color = clBtnFaceFont.Charset = DEFAULT_CHARSETFont.Color = clWindowTextFont.Height = -11Font.Name = 'Tahoma'Font.Style = []OldCreateOrder = FalseOnCreate = FormCreatePixelsPerInch = 96TextHeight = 13object DBGrid1: TDBGridLeft = 0Top = 65Width = 626Height = 342Align = alClientDataSource = DataSource1TabOrder = 0TitleFont.Charset = DEFAULT_CHARSETTitleFont.Color = clWindowTextTitleFont.Height = -11TitleFont.Name = 'Tahoma'TitleFont.Style = []endobject Panel1: TPanelLeft = 0Top = 0Width = 626Height = 65Align = alTopCaption = 'Panel1'TabOrder = 1object Button1: TButtonLeft = 6Top = 5Width = 75Height = 25Caption = 'Button1'TabOrder = 0OnClick = Button1Clickendobject Button2: TButtonLeft = 87Top = 5Width = 75Height = 25Caption = 'Button2'TabOrder = 1OnClick = Button2Clickendobject Button3: TButtonLeft = 168Top = 5Width = 75Height = 25Caption = 'Button3'TabOrder = 2OnClick = Button3Clickendobject Button4: TButtonLeft = 249Top = 5Width = 75Height = 25Caption = 'Button4'TabOrder = 3OnClick = Button4Clickendobject Button5: TButtonLeft = 330Top = 5Width = 75Height = 25Caption = 'Button5'TabOrder = 4OnClick = Button5Clickendobject Button6: TButtonLeft = 411Top = 5Width = 75Height = 25Caption = 'Button6'TabOrder = 5OnClick = Button6Clickendobject Button7: TButtonLeft = 492Top = 5Width = 75Height = 25Caption = 'Button7'TabOrder = 6OnClick = Button7Clickendobject Button8: TButtonLeft = 6Top = 36Width = 75Height = 25Caption = 'Button8'TabOrder = 7OnClick = Button8Clickendobject Button9: TButtonLeft = 87Top = 36Width = 75Height = 25Caption = 'Button9'TabOrder = 8OnClick = Button9Clickendobject Button10: TButtonLeft = 168Top = 36Width = 75Height = 25Caption = 'Button10'TabOrder = 9OnClick = Button10Clickendobject Button11: TButtonLeft = 249Top = 36Width = 75Height = 25Caption = 'Button11'TabOrder = 10OnClick = Button11Clickendobject Button12: TButtonLeft = 330Top = 34Width = 75Height = 25Caption = 'Button12'TabOrder = 11OnClick = Button12Clickendobject Button13: TButtonLeft = 411Top = 36Width = 75Height = 25Caption = 'Button13'TabOrder = 12OnClick = Button13Clickendobject Button14: TButtonLeft = 492Top = 36Width = 75Height = 25Caption = 'Button14'TabOrder = 13OnClick = Button14Clickendendobject DataSource1: TDataSourceDataSet = ADODataSet1Left = 184Top = 112endobject ADODataSet1: TADODataSetCursorType = ctStaticParameters = <>Left = 232Top = 184endend

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。