Jump to content
xisto Community
Sign in to follow this  
heaven_master_ash

Sql Programming By Heaven_master_ash Own

Recommended Posts

Well This Is A Very very Easy Topic Every One Know About This thing If U Need Help To Understand Better Refer My Knowledge Gatherance Thanx..

The SQL SELECT statement queries data from tables in the database. The statement begins with the SELECT keyword. The basic SELECT statement has 3 clauses:	* SELECT	* FROM	* WHERE The SELECT clause specifies the table columns that are retrieved. The FROM clause specifies the tables accessed. The WHERE clause specifies which table rows are used. The WHERE clause is optional; if missing, all table rows are used.For example,	  SELECT name FROM s WHERE city='Rome'This query accesses rows from the table - s. It then filters those rows where the city column contains Rome. Finally, the query retrieves the name column from each filtered row. Using the example s table, this query produces:	  name	  MarioA detailed description of the query actions:	* The FROM clause accesses the s table. Contents:			sno 	name 	city			S1 	Pierre 	Paris			S2 	John 	London			S3 	Mario 	Rome	* The WHERE clause filters the rows of the FROM table to use those whose city column contains Rome. This chooses a single row from s:			sno 	name 	city			S3 	Mario 	Rome	* The SELECT clause retrieves the name column from the rows filtered by the WHERE clause:			name			MarioThe remainder of this subsection examines the 3 major clauses of the SELECT statement, detailing their syntax and semantics:	* SELECT Clause -- specifies the table columns retrieved	* FROM Clause -- specifies the tables to be accessed	* WHERE Clause -- specifies which rows in the FROM tables to use Extended query capabilities are covered in the next sub-section.SELECT ClauseThe SELECT clause is mandatory. It specifies a list of columns to be retrieved from the tables in the FROM clause. It has the following general format:	  SELECT [ALL|DISTINCT] select-listselect-list is a list of column names separated by commas. The ALL and DISTINCT specifiers are optional. DISTINCT specifies that duplicate rows are discarded. A duplicate row is when each corresponding select-list column has the same value. The default is ALL, which retains duplicate rows.For example,	  SELECT descr, color FROM pThe column names in the select list can be qualified by the appropriate table name:	  SELECT p.descr, p.color FROM pA column in the select list can be renamed by following the column name with the new name. For example:	  SELECT name supplier, city location FROM sThis produces:	  supplier 	location	  Pierre 	Paris	  John 	London	  Mario 	RomeThe select list may also contain expressions. See Expressions.A special select list consisting of a single '*' requests all columns in all tables in the FROM clause. For example,	  SELECT * FROM sp	  sno 	pno 	qty	  S1 	P1 	NULL	  S2 	P1 	200	  S3 	P1 	1000	  S3 	P2 	200The * delimiter will retrieve just the columns of a single table when qualified by the table name. For example:	  SELECT sp.* FROM spThis produces the same result as the previous example.An unqualified * cannot be combined with other elements in the select list; it must be stand alone. However, a qualified * can be combined with other elements. For example,	  SELECT sp.*, city	  FROM sp, s	  WHERE sp.sno=s.sno	  sno 	pno 	qty 	city	  S1 	P1 	NULL 	Paris	  S2 	P1 	200 	London	  S3 	P1 	1000 	Rome	  S3 	P2 	200 	RomeNote: this is an example of a query joining 2 tables. See Joining Tables.FROM ClauseThe FROM clause always follows the SELECT clause. It lists the tables accessed by the query. For example,	  SELECT * FROM sWhen the From List contains multiple tables, commas separate the table names. For example,	  SELECT sp.*, city	  FROM sp, s	  WHERE sp.sno=s.snoWhen the From List has multiple tables, they must be joined together. See Joining Tables.Correlation NamesLike columns in the select list, tables in the from list can be renamed by following the table name with the new name. For example,	  SELECT supplier.name FROM s supplierThe new name is known as the correlation (or range) name for the table. Self joins require correlation names.WHERE ClauseThe WHERE clause is optional. When specified, it always follows the FROM clause. The WHERE clause filters rows from the FROM clause tables. Omitting the WHERE clause specifies that all rows are used.Following the WHERE keyword is a logical expression, also known as a predicate.The predicate evaluates to a SQL logical value -- true, false or unknown. The most basic predicate is a comparison:	  color = 'Red'This predicate returns:	* true -- if the color column contains the string value -- 'Red',	* false -- if the color column contains another string value (not 'Red'), or	* unknown -- if the color column contains null. Generally, a comparison expression compares the contents of a table column to a literal, as above. A comparison expression may also compare two columns to each other. Table joins use this type of comparison. See Joining Tables.The = (equals) comparison operator compares two values for equality. Additional comparison operators are:	* > -- greater than	* < -- less than	* >= -- greater than or equal to	* <= -- less than or equal to	* <> -- not equal to For example,	  SELECT * FROM sp WHERE qty >= 200	  sno 	pno 	qty	  S2 	P1 	200	  S3 	P1 	1000	  S3 	P2 	200Note: In the sp table, the qty column for one of the rows contains null. The comparison - qty >= 200, evaluates to unknown for this row. In the final result of a query, rows with a WHERE clause evaluating to unknown (or false) are eliminated (filtered out).Both operands of a comparison should be the same data type, however automatic conversions are performed between numeric, datetime and interval types. The CAST expression provides explicit type conversions; see Expressions.Extended ComparisonsIn addition to the basic comparisons described above, SQL supports extended comparison operators -- BETWEEN, IN, LIKE and IS NULL.	* BETWEEN Operator	  The BETWEEN operator implements a range comparison, that is, it tests whether a value is between two other values. BETWEEN comparisons have the following format:			value-1 [NOT] BETWEEN value-2 AND value-3	  This comparison tests if value-1 is greater than or equal to value-2 and less than or equal to value-3. It is equivalent to the following predicate:			value-1 >= value-2 AND value-1 <= value-3	  Or, if NOT is included:			NOT (value-1 >= value-2 AND value-1 <= value-3)	  For example,			SELECT *			FROM sp			WHERE qty BETWEEN 50 and 500			sno 	pno 	qty			S2 	P1 	200			S3 	P2 	200	* IN Operator	  The IN operator implements comparison to a list of values, that is, it tests whether a value matches any value in a list of values. IN comparisons have the following general format:			value-1 [NOT] IN ( value-2 [, value-3] ... )	  This comparison tests if value-1 matches value-2 or matches value-3, and so on. It is equivalent to the following logical predicate:			value-1 = value-2 [ OR value-1 = value-3 ] ...	  or if NOT is included:			NOT (value-1 = value-2 [ OR value-1 = value-3 ] ...)	  For example,			SELECT name FROM s WHERE city IN ('Rome','Paris')			name			Pierre			Mario	* LIKE Operator	  The LIKE operator implements a pattern match comparison, that is, it matches a string value against a pattern string containing wild-card characters.	  The wild-card characters for LIKE are percent -- '%' and underscore -- '_'. Underscore matches any single character. Percent matches zero or more characters.	  Examples,	  Match Value 	Pattern 	Result	  'abc' 	'_b_' 	True	  'ab' 	'_b_' 	False	  'abc' 	'%b%' 	True	  'ab' 	'%b%' 	True	  'abc' 	'a_' 	False	  'ab' 	'a_' 	True	  'abc' 	'a%_' 	True	  'ab' 	'a%_' 	True	  LIKE comparison has the following general format:			value-1 [NOT] LIKE value-2 [ESCAPE value-3]	  All values must be string (character). This comparison uses value-2 as a pattern to match value-1. The optional ESCAPE sub-clause specifies an escape character for the pattern, allowing the pattern to use '%' and '_' (and the escape character) for matching. The ESCAPE value must be a single character string. In the pattern, the ESCAPE character precedes any character to be escaped.	  For example, to match a string ending with '%', use:			x LIKE '%/%' ESCAPE '/'	  A more contrived example that escapes the escape character:			y LIKE '/%//%' ESCAPE '/'	  ... matches any string beginning with '%/'.	  The optional NOT reverses the result so that:			z NOT LIKE 'abc%'	  is equivalent to:			NOT z LIKE 'abc%'	* IS NULL Operator	  A database null in a table column has a special meaning -- the value of the column is not currently known (missing), however its value may be known at a later time. A database null may represent any value in the future, but the value is not available at this time. Since two null columns may eventually be assigned different values, one null can't be compared to another in the conventional way. The following syntax is illegal in SQL:			WHERE qty = NULL	  A special comparison operator -- IS NULL, tests a column for null. It has the following general format:			value-1 IS [NOT] NULL	  This comparison returns true if value-1 contains a null and false otherwise. The optional NOT reverses the result:			value-1 IS NOT NULL	  is equivalent to:			NOT value-1 IS NULL	  For example,			SELECT * FROM sp WHERE qty IS NULL			sno 	pno 	qty			S1 	P1 	NULLLogical OperatorsThe logical operators are AND, OR, NOT. They take logical expressions as operands and produce a logical result (True, False, Unknown). In logical expressions, parentheses are used for grouping.	* AND Operator	  The AND operator combines two logical operands. The operands are comparisons or logical expressions. It has the following general format:			predicate-1 AND predicate-2	  AND returns:		  o True -- if both operands evaluate to true		  o False -- if either operand evaluates to false		  o Unknown -- otherwise (one operand is true and the other is unknown or both are unknown) 	  Truth tables for AND:	  AND 	 T	   F	   U 	   T	   T	   F	   U 	   F	   F	   F	   F 	   U	   U	   F	   U 		  	  Input 1 	Input 2 	AND Result	  True 	True 	True	  True 	False 	False	  False 	False 	False	  False 	True 	False	  Unknown 	Unknown 	Unknown	  Unknown 	True 	Unknown	  Unknown 	False 	False	  True 	Unknown 	Unknown	  False 	Unknown 	False	  For example,			SELECT *			FROM sp			WHERE sno='S3' AND qty < 500			sno 	pno 	qty			S3 	P2 	200	* OR Operator	  The OR operator combines two logical operands. The operands are comparisons or logical expressions. It has the following general format:			predicate-1 OR predicate-2	  OR returns:		  o True -- if either operand evaluates to true		  o False -- if both operands evaluate to false		  o Unknown -- otherwise (one operand is false and the other is unknown or both are unknown) 	  Truth tables for OR:	  OR 	 T	   F	   U 	   T	   T	   T	   T 	   F	   T	   F	   U 	   U	   T	   U	   U 		  	  Input 1 	Input 2 	OR Result	  True 	True 	True	  True 	False 	True	  False 	False 	False	  False 	True 	True	  Unknown 	Unknown 	Unknown	  Unknown 	True 	True	  Unknown 	False 	Unknown	  True 	Unknown 	True	  False 	Unknown 	Unknown	  For example,			SELECT *			FROM s			WHERE sno='S3' OR city = 'London'			sno 	name 	city			S2 	John 	London			S3 	Mario 	Rome	  AND has a higher precedence than OR, so the following expression:			a OR b AND c	  is equivalent to:			a OR (b AND c)	* NOT Operator	  The NOT operator inverts the result of a comparison expression or a logical expression. It has the following general format:			NOT predicate-1	  Truth tables for NOT:	  NOT 	 	   T	   F 	   F	   T 	   U	   U 		  	  Input 	NOT Result	  True 	False	  False 	True	  Unknown 	Unknown	  Example query:			SELECT *			FROM sp			WHERE NOT sno = 'S3'			sno 	pno 	qty			S1 	P1 	NULL			S2 	P1 	200

Well Thats It Isnt That Very Very Easy Hope U Find It Help Ful Thanx..

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.