text:
Null (SQL)

In SQL, null or NULL is a special marker used to indicate that a data value does not exist in the database. Introduced by the creator of the relational database model, E. F. Codd, SQL null serves to fulfil the requirement that all true relational database management systems (RDBMS) support a representation of "missing information and inapplicable information". Codd also introduced the use of the lowercase Greek omega (ω) symbol to represent null in database theory. In SQL,  is a reserved word used to identify this marker.

A null should not be confused with a value of 0. A null indicates a lack of a value, which is not the same thing as a zero value. For example, consider the question "How many books does Adam own?" The answer may be "zero" (we know that he owns none) or "null" (we do not know how many he owns). In a database table, the column reporting this answer would start out with no value (marked by null), and it would not be updated with the value zero until it is ascertained that Adam owns no books.

In SQL, null is a marker, not a value. This usage is quite different from most programming languages, where a null value of a reference means it is not pointing to any object.

History
E. F. Codd mentioned nulls as a method of representing missing data in the relational model in a 1975 paper in the FDT Bulletin of ACM-SIGMOD. Codd's paper that is most commonly cited in relation with the semantics of Null (as adopted in SQL) is his 1979 paper in the ACM Transactions on Database Systems, in which he also introduced his Relational Model/Tasmania, although much of the other proposals from the latter paper have remained obscure. Section 2.3 of his 1979 paper details the semantics of Null propagation in arithmetic operations as well as comparisons employing a ternary (three-valued) logic when comparing to nulls; it also details the treatment of Nulls on other set operations (the latter issue still controversial today). In database theory circles, the original proposal of Codd (1975, 1979) is now referred to as "Codd tables". Codd later reinforced his requirement that all RDBMSs support Null to indicate missing data in a 1985 two-part article published in Computerworld magazine.

The 1986 SQL standard basically adopted Codd's proposal after an implementation prototype in IBM System R. Although Don Chamberlin recognized nulls (alongside duplicate rows) as one of the most controversial features of SQL, he defended the design of Nulls in SQL invoking the pragmatic arguments that it was the least expensive form of system support for missing information, saving the programmer from many duplicative application-level checks (see semipredicate problem) while at the same time providing the database designer with the option not to use Nulls if they so desire; for example, in order to avoid well known anomalies (discussed in the semantics section of this article). Chamberlin also argued that besides providing some missing-value functionality, practical experience with Nulls also led to other language features which rely on Nulls, like certain grouping constructs and outer joins. Finally, he argued that in practice Nulls also end up being used as a quick way to patch an existing schema when it needs to evolve beyond its original intent, coding not for missing but rather for inapplicable information; for example, a database that quickly needs to support electric cars while having a miles-per-gallon column.

Codd indicated in his 1990 book The Relational Model for Database Management, Version 2 that the single Null mandated by the SQL standard was inadequate, and should be replaced by two separate Null-type markers to indicate the reason why data is missing. In Codd's book, these two Null-type markers are referred to as 'A-Values' and 'I-Values', representing 'Missing But Applicable' and 'Missing But Inapplicable', respectively. Codd's recommendation would have required SQL's logic system be expanded to accommodate a four-valued logic system. Because of this additional complexity, the idea of multiple Nulls with different definitions has not gained widespread acceptance in the database practitioners' domain. It remains an active field of research though, with numerous papers still being published.

Challenges
Null has been the focus of controversy and a source of debate because of its associated three-valued logic (3VL), special requirements for its use in SQL joins, and the special handling required by aggregate functions and SQL grouping operators. Computer science professor Ron van der Meyden summarized the various issues as: "The inconsistencies in the SQL standard mean that it is not possible to ascribe any intuitive logical semantics to the treatment of nulls in SQL." Although various proposals have been made for resolving these issues, the complexity of the alternatives has prevented their widespread adoption.

Arithmetic operations
Because Null is not a data value, but a marker for an absent value, using mathematical operators on Null gives an unknown result, which is represented by Null. In the following example, multiplying 10 by Null results in Null:

This can lead to unanticipated results. For instance, when an attempt is made to divide Null by zero, platforms may return Null instead of throwing an expected "data exception – division by zero". Though this behavior is not defined by the ISO SQL standard many DBMS vendors treat this operation similarly. For instance, the Oracle, PostgreSQL, MySQL Server, and Microsoft SQL Server platforms all return a Null result for the following:

String concatenation
String concatenation operations, which are common in SQL, also result in Null when one of the operands is Null. The following example demonstrates the Null result returned by using Null with the SQL  string concatenation operator.

This is not true for all database implementations. In an Oracle RDBMS for example NULL and the empty string are considered the same thing and therefore 'Fish ' || NULL || 'Chips' results in 'Fish Chips'.

Comparisons with NULL and the three-valued logic (3VL)
Since Null is not a member of any data domain, it is not considered a "value", but rather a marker (or placeholder) indicating the undefined value. Because of this, comparisons with Null can never result in either True or False, but always in a third logical result, Unknown. The logical result of the expression below, which compares the value 10 to Null, is Unknown:

However, certain operations on Null can return values if the absent value is not relevant to the outcome of the operation. Consider the following example:

In this case, the fact that the value on the left of OR is unknowable is irrelevant, because the outcome of the OR operation would be True regardless of the value on the left.

SQL implements three logical results, so SQL implementations must provide for a specialized three-valued logic (3VL). The rules governing SQL three-valued logic are shown in the tables below (p and q represent logical states)" The truth tables SQL uses for AND, OR, and NOT correspond to a common fragment of the Kleene and Łukasiewicz three-valued logic (which differ in their definition of implication, however SQL defines no such operation).

Effect of Unknown in WHERE clauses
SQL three-valued logic is encountered in Data Manipulation Language (DML) in comparison predicates of DML statements and queries. The  clause causes the DML statement to act on only those rows for which the predicate evaluates to True. Rows for which the predicate evaluates to either False or Unknown are not acted on by,  , or   DML statements, and are discarded by   queries. Interpreting Unknown and False as the same logical result is a common error encountered while dealing with Nulls. The following simple example demonstrates this fallacy:

The example query above logically always returns zero rows because the comparison of the i column with Null always returns Unknown, even for those rows where i is Null. The Unknown result causes the  statement to summarily discard each and every row. (However, in practice, some SQL tools will retrieve rows using a comparison with Null.)

Null-specific and 3VL-specific comparison predicates
Basic SQL comparison operators always return Unknown when comparing anything with Null, so the SQL standard provides for two special Null-specific comparison predicates. The  and   predicates (which use a postfix syntax) test whether data is, or is not, Null.

The SQL standard contains the optional feature F571 "Truth value tests" that introduces three additional logical unary operators (six in fact, if we count their negation, which is part of their syntax), also using postfix notation. They have the following truth tables:

The F571 feature is orthogonal to the presence of the boolean datatype in SQL (discussed later in this article) and, despite syntactic similarities, F571 does not introduce boolean or three-valued literals in the language. The F571 feature was actually present in SQL92, well before the boolean datatype was introduced to the standard in 1999. The F571 feature is implemented by few systems however; PostgreSQL is one of those implementing it.

The addition of IS UNKNOWN to the other operators of SQL's three-valued logic makes the SQL three-valued logic functionally complete, meaning its logical operators can express (in combination) any conceivable three-valued logical function.

On systems which don't support the F571 feature, it is possible to emulate IS UNKNOWN p by going over every argument that could make the expression p Unknown and test those arguments with IS NULL or other NULL-specific functions, although this may be more cumbersome.

Law of the excluded fourth (in WHERE clauses)
In SQL's three-valued logic the law of the excluded middle, p OR NOT p, no longer evaluates to true for all p. More precisely, in SQL's three-valued logic p OR NOT p is unknown precisely when p is unknown and true otherwise. Because direct comparisons with Null result in the unknown logical value, the following query

is not equivalent in SQL with

if the column x contains any Nulls; in that case the second query would return some rows the first one does not return, namely all those in which x is Null. In classical two-valued logic, the law of the excluded middle would allow the simplification of the WHERE clause predicate, in fact its elimination. Attempting to apply the law of the excluded middle to SQL's 3VL is effectively a false dichotomy. The second query is actually equivalent with:

Thus, to correctly simplify the first statement in SQL requires that we return all rows in which x is not null.

In view of the above, observe that for SQL's WHERE clause a tautology similar to the law of excluded middle can be written. Assuming the IS UNKNOWN operator is present, p OR (NOT p) OR (p IS UNKNOWN) is true for every predicate p. Among logicians, this is called law of excluded fourth.

There are some SQL expressions in which it is less obvious where the false dilemma occurs, for example: produces no rows because  translates to an iterated version of equality over the argument set and 1<>NULL is Unknown, just as a 1=NULL is Unknown. (The CAST in this example is needed only in some SQL implementations like PostgreSQL, which would reject it with a type checking error otherwise. In many systems plain SELECT NULL works in the subquery.) The missing case above is of course:

Joins
Joins evaluate using the same comparison rules as for WHERE clauses. Therefore, care must be taken when using nullable columns in SQL join criteria. In particular a table containing any nulls is not equal with a natural self-join of itself, meaning that whereas $$R \bowtie R = R$$ is true for any relation R in relational algebra, a SQL self-join will exclude all rows having a Null anywhere. An example of this behavior is given in the section analyzing the missing-value semantics of Nulls.

The SQL  function or   expressions can be used to "simulate" Null equality in join criteria, and the   and   predicates can be used in the join criteria as well. The following predicate tests for equality of the values A and B and treats Nulls as being equal.

CASE expressions
SQL provides two flavours of conditional expressions. One is called "simple CASE" and operates like a switch statement. The other is called a "searched CASE" in the standard, and operates like an if...elseif.

The simple  expressions use implicit equality comparisons which operate under the same rules as the DML   clause rules for Null. Thus, a simple  expression cannot check for the existence of Null directly. A check for Null in a simple  expression always results in Unknown, as in the following:

Because the expression  evaluates to Unknown no matter what value column i contains (even if it contains Null), the string   will never be returned.

On the other hand, a "searched"  expression can use predicates like   and   in its conditions. The following example shows how to use a searched  expression to properly check for Null:

In the searched  expression, the string   is returned for all rows in which i is Null.

Oracle's dialect of SQL provides a built-in function  which can be used instead of the simple CASE expressions and considers two nulls equal.

Finally, all these constructs return a NULL if no match is found; they have a default  clause.

IF statements in procedural extensions
SQL/PSM (SQL Persistent Stored Modules) defines procedural extensions for SQL, such as the  statement. However, the major SQL vendors have historically included their own proprietary procedural extensions. Procedural extensions for looping and comparisons operate under Null comparison rules similar to those for DML statements and queries. The following code fragment, in ISO SQL standard format, demonstrates the use of Null 3VL in an  statement.

The  statement performs actions only for those comparisons that evaluate to True. For statements that evaluate to False or Unknown, the  statement passes control to the   clause, and finally to the   clause. The result of the code above will always be the message  since the comparisons with Null always evaluate to Unknown.

Analysis of SQL Null missing-value semantics
The groundbreaking work of T. Imieliński and W. Lipski Jr. (1984) provided a framework in which to evaluate the intended semantics of various proposals to implement missing-value semantics, that is referred to as Imieliński-Lipski Algebras. This section roughly follows chapter 19 of the "Alice" textbook. A similar presentation appears in the review of Ron van der Meyden, §10.4.

In selections and projections: weak representation
Constructs representing missing information, such as Codd tables, are actually intended to represent a set of relations, one for each possible instantiation of their parameters; in the case of Codd tables, this means replacement of Nulls with some concrete value. For example,

A construct (such as a Codd table) is said to be a strong representation system (of missing information) if any answer to a query made on the construct can be particularized to obtain an answer for any corresponding query on the relations it represents, which are seen as models of the construct. More precisely, if $q$ is a query formula in the relational algebra (of "pure" relations) and if $\overline{q}$ is its lifting to a construct intended to represent missing information, a strong representation has the property that for any query q and (table) construct T, $\overline{q}$ lifts all the answers to the construct, i.e.:
 * $$\mathop{\mathrm{Models}}(\bar{q}(T)) = \{ q(R)\,| R \in \mathop{\mathrm{Models}}(T) \}$$

(The above has to hold for queries taking any number of tables as arguments, but the restriction to one table suffices for this discussion.) Clearly Codd tables do not have this strong property if selections and projections are considered as part of the query language. For example, all the answers to

should include the possibility that a relation like EmpH22 may exist. However, Codd tables cannot represent the disjunction "result with possibly 0 or 1 rows". A device, mostly of theoretical interest, called conditional table (or c-table) can however represent such an answer:

where the condition column is interpreted as the row doesn't exist if the condition is false. It turns out that because the formulas in the condition column of a c-table can be arbitrary propositional logic formulas, an algorithm for the problem whether a c-table represents some concrete relation has a co-NP-complete complexity, thus is of little practical worth.

A weaker notion of representation is therefore desirable. Imielinski and Lipski introduced the notion of weak representation, which essentially allows (lifted) queries over a construct to return a representation only for sure information, i.e. if it's valid for all "possible world" instantiations (models) of the construct. Concretely, a construct is a weak representation system if
 * $$ \bigcap\mathop{\mathrm{Models}}(\bar{q}(T)) = \bigcap \{ q(R)\,| R \in \mathop{\mathrm{Models}}(T) \}$$

The right-hand side of the above equation is the sure information, i.e. information which can be certainly extracted from the database regardless of what values are used to replace Nulls in the database. In the example we considered above, it's easy to see that the intersection of all possible models (i.e. the sure information) of the query selecting WHERE Age = 22 is actually empty because, for instance, the (unlifted) query returns no rows for the relation EmpH37. More generally, it was shown by Imielinski and Lipski that Codd tables are a weak representation system if the query language is restricted to projections, selections (and renaming of columns). However, as soon as we add either joins or unions to the query language, even this weak property is lost, as evidenced in the next section.

If joins or unions are considered: not even weak representation
Consider the following query over the same Codd table Emp from the previous section:

Whatever concrete value one would choose for the age of Harriet, the above query will return the full column of names of any model of Emp, but when the (lifted) query is run on Emp itself, Harriet will always be missing, i.e. we have:

Thus when unions are added to the query language, Codd tables are not even a weak representation system of missing information, meaning that queries over them don't even report all sure information. It's important to note here that semantics of UNION on Nulls, which are discussed in a later section, did not even come into play in this query. The "forgetful" nature of the two sub-queries was all that it took to guarantee that some sure information went unreported when the above query was run on the Codd table Emp.

For natural joins, the example needed to show that sure information may be unreported by some query is slightly more complicated. Consider the table

and the query

The intuition for what happens above is that the Codd tables representing the projections in the subqueries lose track of the fact that the Nulls in the columns F12.F2 and F23.F2 are actually copies of the originals in the table J. This observation suggests that a relatively simple improvement of Codd tables (which works correctly for this example) would be to use Skolem constants (meaning Skolem functions which are also constant functions), say ω12 and ω22 instead of a single NULL symbol. Such an approach, called v-tables or Naive tables, is computationally less expensive that the c-tables discussed above. However, it is still not a complete solution for incomplete information in the sense that v-tables are only a weak representation for queries not using any negations in selection (and not using any set difference either). The first example considered in this section is using a negative selection clause, WHERE Age <> 22, so it is also an example where v-tables queries would not report sure information.

Check constraints and foreign keys
The primary place in which SQL three-valued logic intersects with SQL Data Definition Language (DDL) is in the form of check constraints. A check constraint placed on a column operates under a slightly different set of rules than those for the DML  clause. While a DML  clause must evaluate to True for a row, a check constraint must not evaluate to False. (From a logic perspective, the designated values are True and Unknown.) This means that a check constraint will succeed if the result of the check is either True or Unknown. The following example table with a check constraint will prohibit any integer values from being inserted into column i, but will allow Null to be inserted since the result of the check will always evaluate to Unknown for Nulls.

Because of the change in designated values relative to the WHERE clause, from a logic perspective the law of excluded middle is a tautology for CHECK constraints, meaning  always succeeds. Furthermore, assuming Nulls are to be interpreted as existing but unknown values, some pathological CHECKs like the one above allow insertion of Nulls that could never be replaced by any non-null value.

In order to constrain a column to reject Nulls, the  constraint can be applied, as shown in the example below. The  constraint is semantically equivalent to a check constraint with an   predicate.

By default check constraints against foreign keys succeed if any of the fields in such keys are Null. For example, the table

would allow insertion of rows where author_last or author_first are irrespective of how the table Authors is defined or what it contains. More precisely, a null in any of these fields would allow any value in the other one, even on that is not found in Authors table. For example, if Authors contained only ('Doe', 'John'), then ('Smith', NULL) would satisfy the foreign key constraint. SQL-92 added two extra options for narrowing down the matches in such cases. If  is added after the   declaration then any non-null must match the foreign key, e.g. ('Doe', NULL) would still match, but ('Smith', NULL) would not. Finally, if  is added then ('Smith', NULL) would not match the constraint either, but (NULL, NULL) would still match it.

Outer joins
SQL outer joins, including left outer joins, right outer joins, and full outer joins, automatically produce Nulls as placeholders for missing values in related tables. For left outer joins, for instance, Nulls are produced in place of rows missing from the table appearing on the right-hand side of the  operator. The following simple example uses two tables to demonstrate Null placeholder production in a left outer join.

The first table (Employee) contains employee ID numbers and names, while the second table (PhoneNumber) contains related employee ID numbers and phone numbers, as shown below.

The following sample SQL query performs a left outer join on these two tables.

The result set generated by this query demonstrates how SQL uses Null as a placeholder for values missing from the right-hand (PhoneNumber) table, as shown below.

Aggregate functions
SQL defines aggregate functions to simplify server-side aggregate calculations on data. Except for the  function, all aggregate functions perform a Null-elimination step, so that Nulls are not included in the final result of the calculation.

Note that the elimination of Null is not equivalent to replacing Null with zero. For example, in the following table,  (the average of the values of  ) will give a different result from that of  :

Here  is 200 (the average of 150, 200, and 250), while   is 150 (the average of 150, 200, 250, and 0). A well-known side effect of this is that in SQL  is equivalent with not   but.

The output of an aggregate function can also be Null. Here is an example:

This query will always output exactly one row, counting the number of employees whose last name contains "Jones", and giving the minimum and maximum wage found for those employees. However, what happens if none of the employees fit the given criteria? Calculating the minimum or maximum value of an empty set is impossible, so those results must be NULL, indicating there is no answer. This is not an Unknown value, it is a Null representing the absence of a value. The result would be:

When two nulls are equal: grouping, sorting, and some set operations
Because SQL:2003 defines all Null markers as being unequal to one another, a special definition was required in order to group Nulls together when performing certain operations. SQL defines "any two values that are equal to one another, or any two Nulls", as "not distinct". This definition of not distinct allows SQL to group and sort Nulls when the  clause (and other keywords that perform grouping) are used.

Other SQL operations, clauses, and keywords use "not distinct" in their treatment of Nulls. These include the following:

 * clause of ranking and windowing functions like
 * ,, and   operator, which treat NULLs as the same for row comparison/elimination purposes
 * keyword used in  queries

The principle that Nulls aren't equal to each other (but rather that the result is Unknown) is effectively violated in the SQL specification for the  operator, which does identify nulls with each other. Consequently, some set operations in SQL, like union or difference, may produce results not representing sure information, unlike operations involving explicit comparisons with NULL (e.g. those in a  clause discussed above). In Codd's 1979 proposal (which was basically adopted by SQL92) this semantic inconsistency is rationalized by arguing that removal of duplicates in set operations happens "at a lower level of detail than equality testing in the evaluation of retrieval operations."

The SQL standard does not explicitly define a default sort order for Nulls. Instead, on conforming systems, Nulls can be sorted before or after all data values by using the  or   clauses of the   list, respectively. Not all DBMS vendors implement this functionality, however. Vendors who do not implement this functionality may specify different treatments for Null sorting in the DBMS.

Effect on index operation
Some SQL products do not index keys containing NULLs. For instance, PostgreSQL versions prior to 8.3 did not, with the documentation for a B-tree index stating that "B-trees can handle equality and range queries on data that can be sorted into some ordering. In particular, the PostgreSQL query planner will consider using a B-tree index whenever an indexed column is involved in a comparison using one of these operators: < ≤ = ≥ >

Constructs equivalent to combinations of these operators, such as BETWEEN and IN, can also be implemented with a B-tree index search. (But note that IS NULL is not equivalent to = and is not indexable.)"

In cases where the index enforces uniqueness, NULLs are excluded from the index and uniqueness is not enforced between NULLs. Again, quoting from the PostgreSQL documentation: "When an index is declared unique, multiple table rows with equal indexed values will not be allowed. Nulls are not considered equal. A multicolumn unique index will only reject cases where all of the indexed columns are equal in two rows."

This is consistent with the SQL:2003-defined behavior of scalar Null comparisons.

Another method of indexing Nulls involves handling them as not distinct in accordance with the SQL:2003-defined behavior. For example, Microsoft SQL Server documentation states the following: "For indexing purposes, NULLs compare as equal. Therefore, a unique index, or UNIQUE constraint, cannot be created if the keys are NULL in more than one row. Select columns that are defined as NOT NULL when columns for a unique index or unique constraint are chosen."

Both of these indexing strategies are consistent with the SQL:2003-defined behavior of Nulls. Because indexing methodologies are not explicitly defined by the SQL:2003 standard, indexing strategies for Nulls are left entirely to the vendors to design and implement.

Null-handling functions
SQL defines two functions to explicitly handle Nulls:  and. Both functions are abbreviations for searched  expressions.

NULLIF
The  function accepts two parameters. If the first parameter is equal to the second parameter,  returns Null. Otherwise, the value of the first parameter is returned.

Thus,  is an abbreviation for the following   expression:

COALESCE
The  function accepts a list of parameters, returning the first non-Null value from the list:

is defined as shorthand for the following SQL  expression:

Some SQL DBMSs implement vendor-specific functions similar to. Some systems (e.g. Transact-SQL) implement an  function, or other similar functions that are functionally similar to. (See  functions for more on the   functions in Transact-SQL.)

NVL
The Oracle  function accepts two parameters. It returns the first non-NULL parameter or NULL if all parameters are NULL.

A  expression can be converted into an equivalent   expression thus:

turns into:

A use case of this function is to replace in an expression a NULL by a value like in   which says, 'if   is NULL, replace it with the value 0'.

There is, however, one notable exception. In most implementations,  evaluates its parameters until it reaches the first non-NULL one, while   evaluates all of its parameters. This is important for several reasons. A parameter after the first non-NULL parameter could be a function, which could either be computationally expensive, invalid, or could create unexpected side effects.

Data typing of Null and Unknown
The  literal is untyped in SQL, meaning that it is not designated as an integer, character, or any other specific data type. Because of this, it is sometimes mandatory (or desirable) to explicitly convert Nulls to a specific data type. For instance, if overloaded functions are supported by the RDBMS, SQL might not be able to automatically resolve to the correct function without knowing the data types of all parameters, including those for which Null is passed.

Conversion from the  literal to a Null of a specific type is possible using the   introduced in SQL-92. For example:

represents an absent value of type INTEGER.

The actual typing of Unknown (distinct or not from NULL itself) varies between SQL implementations. For example, the following

parses and executes successfully in some environments (e.g. SQLite or PostgreSQL) which unify a NULL boolean with Unknown but fails to parse in others (e.g. in SQL Server Compact). MySQL behaves similarly to PostgreSQL in this regard (with the minor exception that MySQL regards TRUE and FALSE as no different from the ordinary integers 1 and 0). PostgreSQL additionally implements a  predicate, which can be used to test whether a three-value logical outcome is Unknown, although this is merely syntactic sugar.

BOOLEAN data type
The ISO SQL:1999 standard introduced the BOOLEAN data type to SQL, however it's still just an optional, non-core feature, coded T031.

When restricted by a  constraint, the SQL BOOLEAN works like the Boolean type from other languages. Unrestricted however, the BOOLEAN datatype, despite its name, can hold the truth values TRUE, FALSE, and UNKNOWN, all of which are defined as boolean literals according to the standard. The standard also asserts that NULL and UNKNOWN "may be used interchangeably to mean exactly the same thing".

The Boolean type has been subject of criticism, particularly because of the mandated behavior of the UNKNOWN literal, which is never equal to itself because of the identification with NULL.

As discussed above, in the PostgreSQL implementation of SQL, Null is used to represent all UNKNOWN results, including the UNKNOWN BOOLEAN. PostgreSQL does not implement the UNKNOWN literal (although it does implement the IS UNKNOWN operator, which is an orthogonal feature.) Most other major vendors do not support the Boolean type (as defined in T031) as of 2012. The procedural part of Oracle's PL/SQL however supports BOOLEAN variables; these can also be assigned NULL and the value is considered the same as UNKNOWN.

Common mistakes
Misunderstanding of how Null works is the cause of a great number of errors in SQL code, both in ISO standard SQL statements and in the specific SQL dialects supported by real-world database management systems. These mistakes are usually the result of confusion between Null and either 0 (zero) or an empty string (a string value with a length of zero, represented in SQL as ). Null is defined by the SQL standard as different from both an empty string and the numerical value, however. While Null indicates the absence of any value, the empty string and numerical zero both represent actual values.

A classic error is the attempt to use the equals operator  in combination with the keyword   to find rows with Nulls. According to the SQL standard this is an invalid syntax and shall lead to an error message or an exception. But most implementations accept the syntax and evaluate such expressions to. The consequence is that no rows are found – regardless of whether rows with Nulls exist or not. The proposed way to retrieve rows with Nulls is the use of the predicate  instead of.

In a related, but more subtle example, a  clause or conditional statement might compare a column's value with a constant. It is often incorrectly assumed that a missing value would be "less than" or "not equal to" a constant if that field contains Null, but, in fact, such expressions return Unknown. An example is below:

These confusions arise because the Law of Identity is restricted in SQL's logic. When dealing with equality comparisons using the  literal or the   truth-value, SQL will always return   as the result of the expression. This is a partial equivalence relation and makes SQL an example of a Non-Reflexive logic.

Similarly, Nulls are often confused with empty strings. Consider the  function, which returns the number of characters in a string. When a Null is passed into this function, the function returns Null. This can lead to unexpected results, if users are not well versed in 3-value logic. An example is below:

This is complicated by the fact that in some database interface programs (or even database implementations like Oracle's), NULL is reported as an empty string, and empty strings may be incorrectly stored as NULL.

Criticisms
The ISO SQL implementation of Null is the subject of criticism, debate and calls for change. In The Relational Model for Database Management: Version 2, Codd suggested that the SQL implementation of Null was flawed and should be replaced by two distinct Null-type markers. The markers he proposed were to stand for "Missing but Applicable" and "Missing but Inapplicable", known as A-values and I-values, respectively. Codd's recommendation, if accepted, would have required the implementation of a four-valued logic in SQL. Others have suggested adding additional Null-type markers to Codd's recommendation to indicate even more reasons that a data value might be "Missing", increasing the complexity of SQL's logic system. At various times, proposals have also been put forth to implement multiple user-defined Null markers in SQL. Because of the complexity of the Null-handling and logic systems required to support multiple Null markers, none of these proposals have gained widespread acceptance.

Chris Date and Hugh Darwen, authors of The Third Manifesto, have suggested that the SQL Null implementation is inherently flawed and should be eliminated altogether, pointing to inconsistencies and flaws in the implementation of SQL Null-handling (particularly in aggregate functions) as proof that the entire concept of Null is flawed and should be removed from the relational model. Others, like author Fabian Pascal, have stated a belief that "how the function calculation should treat missing values is not governed by the relational model."

Closed-world assumption
Another point of conflict concerning Nulls is that they violate the closed-world assumption model of relational databases by introducing an open-world assumption into it. The closed world assumption, as it pertains to databases, states that "Everything stated by the database, either explicitly or implicitly, is true; everything else is false." This view assumes that the knowledge of the world stored within a database is complete. Nulls, however, operate under the open world assumption, in which some items stored in the database are considered unknown, making the database's stored knowledge of the world incomplete.

title: Null (SQL)


text:
User talk:MPedeeSiegel

Welcome!

Hello,, and welcome to Wikipedia! Thank you for your contributions. I hope you like the place and decide to stay. Here are a few good links for newcomers: I hope you enjoy editing here and being a Wikipedian! Please sign your name on talk pages using four tildes (~~); this will automatically produce your name and the date. If you need help, check out Questions, ask me on my talk page, or place  on your talk page and someone will show up shortly to answer your questions. Again, welcome!
 * The five pillars of Wikipedia
 * How to edit a page
 * Help pages
 * Tutorial
 * How to write a great article
 * Manual of Style

Here is a link to the various public templates available. Template messages DES 20:23, 6 Jun 2005 (UTC)

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

title: User talk:MPedeeSiegel


text:
User talk:SuperSonicx

Hi! Im Patrick Barboza! Or SuperSonicx.. Im a gay asshole

title: User talk:SuperSonicx


text:
Bancroft Award

The Bancroft Award is an award of the Royal Society of Canada "given for publication, instruction, and research in the earth sciences that have conspicuously contributed to public understanding and appreciation of the subject".

The award was endowed in 1968 to honour her late husband by the wife of Joseph Austin Bancroft (1882–1957), formerly Dawson Professor at McGill University. It is normally awarded on a biennial basis and consists of a presentation scroll and a cash award of CAD $2,500.

Recipients

 * 1968 - John Tuzo Wilson, FRSC
 * 1970 - David M. Baird, FRSC
 * 1975 - E.R. Ward Neale, FRSC
 * 1976 - Roger A. Blais
 * 1978 - Frank Kenneth North
 * 1980 - William W. Hutchison
 * 1982 - Christopher R. Barnes, FRSC
 * 1984 - Jack G. Souther
 * 1986 - Derek York, FRSC
 * 1990 - Steven D. Scott, FRSC
 * 1992 - Godfrey S. Nowlan
 * 1994 - Alan V. Morgan
 * 1996 - Dale A. Russell
 * 2000 - Jan Veizer, FRSC
 * 2002 - John J. Clague, FRSC
 * 2004 - William Richard Peltier, FRSC
 * 2006 - David J. Dunlop, FRSC
 * 2008 - Anthony E. Williams-Jones, FRSC
 * 2010 - Frank C. Hawthorne
 * 2014 - Guy Narbonne
 * 2016 - Barbara Sherwood Lollar, FRSC
 * 2018 - Michel Jébrak
 * 2020 - Irena Creed, FRSC
 * 2022 - Sandra M. Barr

title: Bancroft Award


text:
Clingan Jackson

Clingan Jackson (March 28, 1907 – May 26, 1997) was a Democratic politician and newspaperman from Ohio.

Jackson was born in Youngstown, Ohio in 1907, and was raised on the east side of the city and in towns on either side of the Ohio border with Pennsylvania. He graduated in 1929 from University of Colorado, where he majored in history and English. He returned to Ohio where he began work in September of that year as a reporter for the Youngstown Vindicator daily newspaper. He continued work as a reporter and editor for the newspaper until his retirement in 1983.

Jackson was a Democratic candidate for Ohio governor in the 1958 primary. He also served as a Democratic member of the Ohio House of Representatives (1934–1936) and the Ohio State Senate (1944–1950). During his time in the Senate, he authored bills creating the Ohio Department of Natural Resources and requiring the reclamation of land used for strip mining. He also served as the chair of the Senate Finance Committee in the 98th General Assembly.

Upon leaving the legislature, he was appointed to the Ohio Program Commission by Governor Frank J. Lausche, beginning over 30 years of service on various state commissions and boards.

Jackson died in Youngstown on May 26, 1997.

title: Clingan Jackson


text:
T-95

T-95 is the common informal designation of the Russian fourth-generation main battle tank internally designated as the Object 195, that was under development at Uralvagonzavod from 1988 until its cancelation in 2010. Little about the tank is publicly known. The work from Object 195 was used in Object 148, later type-classified as the T-14 Armata.

History
Around 1988, Nizhni Tagil was ordered to work on a new main battle tank. Requirements were developed from the Sovershenstvovanie-88 (Improvement-88) study. The chassis derives from Object 187, but is longer.

The project was first reported in 1995 It was due to be introduced in 2009, but was repeatedly delayed.

T-95 was a name given to the tank by media; it was not an official name.

Work on Object 195 was curtailed by lack of funding until 2000–2001. The prototype tank was announced by the Russian Minister of Defense Igor Sergeyev in 2000. In July 2008, the Russian government announced that the Russian armed forces would start receiving new-generation tanks superior to the T-90 after 2010. The head of the Federal Service for Defence Contracts, Sergei Mayev, said the T-90 would remain the "backbone" of Russian armor until 2025, and that T-72s and T-80s would not be modernized, but instead be phased out by "new-generation tanks" entering service after 2010.

Object 195 was canceled in April 2010. The reasons for its cancellation have not been made public as of 2018. The Russian government terminated its involvement in the project in May 2010 and withdrew all funding.

In May 2010, deputy defense minister and chief of armaments Vladimir Popovkin announced that a number of programs for development of new armor and artillery weapons would be cancelled. The main victim was the Object 195 program. Popovkin said the military would focus on modernization of the T-90 instead. The reason given for this was that the T-95 was already obsolete, as it had been in development for almost two decades, but some sources speculated it had more to do with the recent reduction in Russia's military budget, requiring substantial cuts across the board.

Popovkin confirmed this decision in a June 2010 interview, stating that Russia would no longer fund and was not going to buy the T-95, but that Uralvagonzavod might continue to work on the tank without government support. In early July 2010, as reported by "Ural Information Bureau", the Minister of Industry and Science of the Sverdlovsk region, Alexander Petrov, said that Uralvagonzavod would soon finalize a T-95 prototype, entirely independently. However, without state funding or export permits, the company would be unable to proceed to production.

In July 2010 at the Russian Defence Expo in Nizhny Tagil, the Director of the Federal Service for Military-Technical Cooperation of the Russian Federation, Konstantin Biryulin, announced that the Russian state monopoly Federal Service for Defense Contracts was unveiling the prototype of Object 195 in a private showing to selected VIP guests, though the tank was never shown to journalists or confirmed publicly by any of the participants.

Design
Most information about this tank was speculative. Other than its outside dimensions, the design was presumably a significant departure from the Soviet-era tanks then in service. It was expected to have a new hydropneumatic suspension with adaptive features, and the entire crew was going to be placed in a sealed compartment inside the hull, isolated from other tank components. The T-95 was armed with a 152 mm 2A83 main gun.

title: T-95


text:
List of missiles by country

This list of missiles by country displays the names of missiles in order of the country where they originate (were developed), with the countries listed alphabetically and annotated with their continent (and defence alliance, if applicable). In cases where multiple nations have developed or produced a missile, it is listed under each significantly participating nation. Within the lists of each country, missiles are ordered by designation and/or calling name (the latter being especially relevant for Russian/Soviet missiles). In some cases multiple listings are used, in order to provide cross-references for easier navigation. This is a list of missiles developed by a particular country; a list of Military rockets. Anti-tank missiles are listed elsewhere

For an alphabetical list by missile name, see the list of missiles.

Argentina

 * Alacrán (a short-range exploratory development based on the Condor I program)
 * AS-25K anti-ship missile (AShM), air-to-surface missile (ASM)
 * Cóndor I (with major contributions of German technology)
 * Cóndor II (in cooperation with several Middle-Eastern countries)
 * Cóndor III
 * Martin Pescador MP-1000 anti-ship missile (AShM), air-to-surface missile (ASM)
 * Mathogo anti-tank guided missile (ATGM)

Australia

 * Ikara
 * Malkara (Australian-British)
 * Nulka
 * Evolved SeaSparrow Missile (ESSM) as part of consortium development of RIM-162 ESSM

Brazil

 * A-Darter Fifth generation short range infrared homing air-to-air missile (joint South Africa/Brazil)
 * FOG-MPM Fiber-Optical-Guided-Multipurpose-missile.
 * AVMT-300 GPS and/or laser-guided long-range missile
 * MAA-1A Piranha short-range infrared-homing air-to-air missile.
 * MAA-1B Piranha air-to-air missile, also known as "Piranha II".
 * MSS-1.2 AC antitank guided missile.
 * MSA-3.1 AAé antiaircraft guided missile.
 * MAS-5.1 air-to-ground missile
 * MAR-1 antiradiation missile (ARM).
 * MAN-1 (MANSUP) antiship missile
 * MICLA-BR cruise missile

Canada

 * AMADS
 * Eryx (Franco-Canadian)
 * Velvet Glove

China
Missiles:
 * HY-2 (Hai Ying) short-range antiship subsonic cruise missile
 * YJ-83 (Ying Ji) Antiship missile
 * YJ-91 Antiship missile
 * YJ-7 Antiship missile
 * YJ-62 Antiship missile
 * YJ-12 Antiship missile
 * YJ-18 Antiship/Land-attack missile
 * CJ-10 (DF-10) (Chang Jian) Land-attack cruise missile
 * KD-88 (Kong Di) Land-attack cruise missile
 * PL-5 (Pi Li)AAM
 * PL-7 AAM
 * PL-8 AAM
 * PL-9 AAM/SAM
 * PL-10 AAM
 * PL-11 AAM
 * PL-12 AAM
 * PL-15 AAM
 * TY-90 AAM
 * CSS-2
 * DF-3A (Dong Feng) MRBM
 * DF-4 IRBM
 * DF-5 ICBM
 * DF-11 SRBM
 * DF-15 SRBM
 * DF-16 SRBM
 * DF-17 SRBM
 * DF-21 MRBM/ASBM
 * DF-26 MRBM/ASBM
 * DF-31 ICBM Range:8000 km
 * DF-31A/DF-31AG ICBM Range:10000~13000 km
 * DF-41 ICBM
 * DH-10 LACM
 * JL-1 (Ju Lang)SLBM
 * JL-2 SLBM Range:8000 km
 * JL-3 SLBM
 * HQ-1 (Hong Qi)SAM
 * HQ-2 SAM
 * Hongnu-5 SAM
 * HQ-7 SAM
 * HQ-9 SAM
 * HQ-16 SAM
 * HQ-10 SAM
 * HQ-15 SAM
 * HQ-17 SAM
 * HQ-18 SAM
 * HQ-61 SAM
 * KS-1 (Kai Shan)SAM
 * LY-60 (Lie Ying)SAM
 * QW-1(Qian Wei) SAM
 * QW-2 SAM
 * CY-1 Series (Chang Ying) Anti-submarine Missile
 * Yu-8 Anti-submarine Missile
 * HJ-8 (Hong Jian)Anti-Tank Missile
 * HJ-9 Anti-Tank Missile
 * HJ-10 Anti-Tank Missile
 * HJ-12 Anti-Tank Missile

European joint-venture

 * ASGLA (Igla missile) (Germano-Ukrainian) land-based VSHORAD system
 * ASRAD-R (Bolide missile) (Germano-Swedish) land-based VSHORAD system
 * ASRAD-R Naval (Bolide missile) (Germano-Swedish) shipboard VSHORAD system
 * Cobra (Germano-Swiss)
 * Cobra 2000 (Germano-Swiss)
 * Euromissile HOT (Franco-German) antitank missile
 * FC/ASW / FMAN/FMC (Franco-British)
 * Falcon (IRIS-T SL missile) (Germano-Swedish-American) land-based SHORAD system
 * MGBADS (IRIS-T SL missile) (Germano-Danish-Norwegian) land-based SHORAD system
 * RBS-98 (IRIS-T SL missile) (Germano-Swedish) land-based SHORAD system
 * IRIS-T (Germano-Italian-Swedish-Greek-Norwegian-Spanish)
 * IDAS (Germano-Norwegian-Turkish) submarine-launched anti-air/ship/land missile
 * ForceSHIELD (Starstreak missile) (Franco-British) land-based VSHORAD system
 * Mamba (Germano-Swiss)
 * Martel (Franco-British) Models AJ 168 and AS.37
 * NLAW (British-Swedish)
 * MEADS (PAC-3 MSE missile) (Germano-Italian-American) (cancelled) land-based MRAD system
 * MBDA Meteor (Franco-German-British-Italian-Swedish) air-to-air missile
 * MILAN (Franco-German)
 * MIM-115 Roland (Franco-German) (replaced by LFK NG)
 * Mosquito (Germano-Swiss)
 * Otomat (Franco-Italian)
 * Polyphem (Franco-German) (cancelled)
 * PAAMS / Sea Viper (MBDA Aster missile) (Franco-British-Italian) shipboard SHORAD/MRAD system
 * SAMP/T (MBDA Aster missile) (Franco-Italian) land-based SHORAD/MRAD system
 * Sea Venom / ANL (Franco-British)
 * Storm Shadow / SCALP EG (Franco-British)
 * Taurus KEPD 150/350 (Germano-Swedish)

France

 * A3SM (Mistral missile) submarine mast VSHORAD system
 * A3SM (MICA missile) SLAM
 * AASM
 * Apache
 * AS.15
 * AS.20
 * AS.30
 * ASMP
 * Crotale surface-to-air missile
 * ENTAC (MGM-32)
 * Eryx (Franco-Canadian)
 * Exocet anti-ship missile
 * Exocet MM38 surface-launched
 * Exocet AM39 air-launched
 * Exocet SM39 submarine-launched
 * Exocet MM40 surface-launched
 * Hadès
 * M1
 * M2
 * M20
 * M4
 * M45
 * M51
 * Malafon
 * Masurca (Naval SAM)
 * MdCN
 * MHT/MLP
 * MICA
 * Mistral
 * MMP (anti-tank)
 * MMP/SEA LAUNCHED (ship-to-ship/shore)
 * Pluton
 * R.530
 * S1
 * S2
 * S3
 * SS.10 (MGM-21A)
 * SS.11 (AGM-22)
 * SS.12 / AS.12
 * Super 530

Germany

 * AGM Armiger
 * AS.34 Kormoran 1/2
 * ASRAD (Stinger, RBS-70 mk2, Igla, Mistral, Starburst missiles) land-based VSHORAD system
 * ASRAD-2 land-based VSHORAD system
 * Enforcer
 * EuroSpike (Germano-Israeli)
 * IRIS-T SL
 * LFK NG
 * PARS 3 LR
 * RIM-116 RAM (Germano-American)
 * TLVS (PAC-3 MSE, IRIS-T SL missiles) (Germano-American) land-based SHORAD/MRAD system

German missiles of World War II

 * V-1 flying bomb
 * V-2 rocket
 * Enzian
 * Wasserfall
 * Ruhrstahl X-4
 * Henschel Hs 117 Schmetterling
 * Rheinbote
 * Rheintochter
 * Henschel Hs 293
 * Fritz X
 * Feuerlilie

Greece

 * Aris AA missile system (cancelled)

India

 * Akash: surface-to-air missile.
 * Akash-NG: successor to Akash and Akash-1S surface-to-air missiles (Under testing)
 * Barak 8: long-range surface-to-air missile.
 * MR-SAM : IAF and IA variants
 * LR-SAM : Indian navy variants
 * QRSAM : DRDO, BEL and BDL's quick reaction surface-to-air missile.
 * IAF's SAMAR Air Defence System
 * VL-SRSAM : DRDL and BDL's short range surface-to-air missile (Under testing)
 * DRDO VSHORAD : Man portable air defence missile (Under testing)
 * XRSAM : Long-range surface to air missile (under development)
 * Prithvi Air Defence (Pradyumna ballistic missile interceptor): exo-atmospheric anti-ballistic missile.
 * Advanced Air Defence (Ashwin Ballistic Missile Interceptor): endo-atmospheric anti-ballistic missile.

 * Advanced Air Defence interceptor test on 28 December 2017.jpgvi Defence Vehicle: anti-ballistic missile.
 * PDV Mk I
 * [[File:Launch of DRDO's Ballistic Missile Defence interceptor missile for an ASAT test on 27 March 2019.jpg|thumb|PDV Mk-2 Anti-satellite/ballistic missile]]PDV Mk II (ASAT & ICBM interceptor)
 * AD-1 :endo-atmospheric and low exo-atmospheric anti-ballistic missile. (under Testing)
 * AD-2 : exo-atmospheric anti-ballistic missile (under development)
 * Trishul: surface-to-air missile. (cancelled)
 * Maitri DRDO quick-reaction surface-to-air missile. (cancelled)
 * Astra BVRAAM: active radar homing beyond-visual-range missile.
 * Astra Mk-I
 * Astra Mk-II (under Testing)
 * Astra Mk-III  (under Testing)
 * DRDO SFDR BVRAAM: Solid Fuel Ducted Ramjet propulsion based air to air missile
 * Novator KS-172 : Russian/Indian air-to-air missile designed as an "AWACS killer"
 * Nag: anti-tank missile
 * Helina: Air-launched version of Nag anti-tank missile.
 * SANT Missile: Standoff anti-tank missile
 * Amogha: anti-tank missile.
 * SAMHO (missile)
 * DRDO Anti Tank Missile
 * MPATGM - Man-Portable Anti-Tank Guided Missile
 * Prithvi
 * Prithvi-I (SS-150): surface-to-surface ballistic missile.
 * Prithvi-II (SS-250): surface-to-surface ballistic missile.
 * Prithvi-III (SS-350): surface-to-surface ballistic missile.
 * Dhanush: ship-launched surface-to-surface ballistic missile.
 * Agni P Ballistic Missile first fligh test.jpg Medium range ballistic missile ]]Agni
 * Agni-I MRBM: surface-to-surface medium-range ballistic missile.
 * Agni-II MRBM: surface-to-surface medium-range ballistic missile.
 * Agni-III IRBM: surface-to-surface intermediate-range ballistic missile.
 * Agni-IV IRBM: surface-to-surface intermediate-range ballistic missile.
 * Agni-V ICBM: surface-to-surface intercontinental ballistic missile.
 * Agni-P:surface-to-surface medium range ballistic missile.
 * Agni:VI: Hypersonic intercontinental ballistic missile. Range: 11,000 km to 12,000 km (under development)
 * Surya: Intercontinental ballistic missile. Range: 8000 km - 17000 km (under development)
 * K Missile family
 * K 15 Sagarika: submarine-launched ballistic missile.
 * K 4: submarine-launched ballistic missile.
 * K-5: submarine-launched ballistic missile. (under development)
 * K-6: submarine launched intercontinental ballistic missile. (under development)
 * Shaurya: surface-to-surface hypersonic tactical missile.
 * Prahaar: tactical short-range ballistic missile.
 * Pragati: Export variant of Prahaar with slightly higher range than Prahaar
 * Pranash: Higher range variant of Prahaar
 * Pralay short range ballistic missile
 * Nirbhay: Long-range subsonic cruise missile (Technically closed)
 * ITCM : Indigenous Technology Cruise Missile (Technology Demonstrator)
 * SLCM : Submarine Launch Cruise Missile (Under Testing)
 * LR-LACM :Long Range Land Attack Cruise Missile (Under Development)
 * Brahmos being launched from Imphal Y-12706.jpg]]BrahMos: cruise missile.
 * BrahMos-A: air-launched cruise missile.
 * BrahMos-NG: miniature version based on the BrahMos (under development).
 * BrahMos-II: hypersonic missile (under development).
 * Pinaka: guided rockets (Pinaka Mk1 unguided & MK2 guided rockets, Pinaka Mk III in development)
 * DRDO SAAW: Precision guided anti airfield bomb
 * DRDO ULPGM (UAV Launched Precision Guided Missiles)
 * Rudram family air-to-surface missile
 * Rudram-I :air-to-surface anti-radiation missile (under testing)
 * Rudram-II (under testing)
 * Rudram-III (under development)
 * SMART (Supersonic Missile Assisted Release of Torpedo)
 * NASM-SR (Short Range - Naval Anti-Ship Missile) (under Testing)
 * NASM -MR ( Medium Range Anti Ship Missile) ( under development)
 * LR-AShM (Long Range Anti Ship Missile) (Under Testing)
 * HGV-202F hypersonic glide vehicle (under development)
 * HSTDV : Hypersonic Technology Demonstrator Vehicle

Iran

 * Arash 122 mm unguided artillery rocket
 * Ashoura Two stage Solid fueled MRBM
 * Bavar-373 long range road mobile surface-to-air missile
 * Bina laser guided dual capability surface to surface and Air-to-surface missile
 * Dehlaviyeh man-portable ATGM
 * Dezful MRBM
 * Emad liquid fueled MRBM
 * Fajr Multiple launch rocket systems:
 * Fajr-1 towed 107 mm Multiple rocket launcher
 * Fajr-3 heavy wheeled 240 mm Multiple rocket launcher
 * Fajr-5 333 mm long range Multiple rocket launcher
 * Fajr-3 liquid fueled MRBM
 * Fajr-4 air-to-surface guided rocket
 * Fakour-90 long range Air-to-air missile
 * Falaq Multiple launch rocket systems:
 * Falaq-1 240 mm Multiple rocket launcher
 * Falaq-2 333 mm Multiple rocket launcher
 * Fateh-110 road-mobile single-stage solid-fueled surface-to-surface missile
 * Fateh-313 Solid fueled SRBM
 * Fateh Mobin single-stage solid propelled Terminal Infrared homing dual surface-to-surface and anti-ship short-range ballistic missile
 * Fatter short range Air-to-air missile
 * Ghadir Anti-ship cruise missile(ASCM), dual land-based and ship-based launch platform compatible
 * Ghadr-110 Two stage MRBM
 * Haseb short-range 107 mm artillery rocket
 * Herz-9 mobile short-range air defense system
 * Hoot supercavitation Torpedo
 * Hormoz anti-ship ballistic missiles:
 * Hormoz-1 Anti-ship/anti-radiation (ARM) ballistic missile
 * Hormoz-2 Anti-ship/anti-radiation (ARM) ballistic missile
 * Hoveyzeh all-weather surface-to-surface cruise missile
 * Jask-2 short-range SLCM
 * Kamin-2 wheeled, road-mobile short-range air defense system
 * Khalij Fars single stage Solid fueled supersonic Anti-ship Quasi Ballistic missile
 * Khordad 15 surface-to-air missile system
 * Khorramshahr liquid fueled MRBM
 * Kowsar Medium range, land-based Solid fueled Anti-ship missile
 * Mersad low to mid range air defense system
 * Mehrab intermediate range Solid fueled smart surface-to-air missile
 * Meshkat Medium range cruise missile under development
 * Misagh MANPADS:
 * Misagh-1 man-portable infrared-guided surface-to-air missile
 * Misagh-2 man-portable infrared-guided surface-to-air missile
 * Misagh-3 man-portable infrared-guided surface-to-air missile
 * Nasr-1 short range anti ship missile
 * Nasr-e Basir Anti-ship Cruise missile(ASCM)
 * Naze'at Artillery rockets:
 * Naze'at 6-H Solid fueled 356 mm
 * Naze'at 10-H Solid fueled 457 mm
 * Noor short-range 122 mm artillery rocket
 * Noor long-range anti-ship cruise missile(ASCM)
 * Oghab unguided 230 mm artillery rocket
 * Qader medium-range anti-ship cruise missile(ASCM)
 * Qased 3 Smart Electro-optically Guided ALCM
 * Qaem SACLOS beam-riding SHORAD surface-to-air missile
 * Qiam 1 SRBM
 * Ra'ad medium-range aerial defence system
 * Ra'ad wire-guided ATGM
 * Ra'ad subsonic anti-ship cruise missile(ASCM)
 * Ra'ad-500 short-range ballistic missile
 * Sadid-1 TV-guided ATGM
 * Saegheh wire-guided SACLOS ATGM
 * Saegheh 40 mm anti-personnel rocket
 * Saegheh short-range surface-to-surface missile
 * Samen road-mobile solid propelled SRBM
 * Sayyad surface-to-air missiles:
 * Sayyad-1 high-altitude command guided Air defence system
 * Sayyad-2 Mid-range, high altitude solid-fueled surface-to-air missile
 * Sayyad-3 Long-range, high altitude solid-fueled surface-to-air missile
 * Sayyad-4 Long-range, high altitude solid-fueled surface-to-air missile
 * Sevom Khordad medium-range aerial defence system
 * Sejjil solid-fueled MRBM
 * Shahab Ballistic missiles:
 * Shahab-1 TBM
 * Shahab-2 SRBM
 * Shahab-3 MRBM
 * Shahab-4 MRBM
 * Shahab-5 IRBM
 * Shahab-6 ICBM
 * Shahin artillery rockets:
 * Shahin-1 Iranian road-mobile truck mounted short-range fin-stabilized unguided 333 mm Artillery rocket
 * Shahin-2 Iranian road-mobile truck mounted short-range fin-stabilized unguided 333 mm Artillery rocket
 * Shahin medium-range supersonic surface-to-air missile/Anti-ballistic missile
 * Shalamcheh medium-range supersonic surface-to-air missile
 * Soumar long-range cruise missile
 * Tabas medium-range aerial defence system
 * Taer 2 mid-range radar guided Solid propelled Surface-to-air missile
 * Talash 3 long-range mobile surface-to-air missile system
 * Tondar laser beam riding ATGM
 * Tondar-69 SRBM
 * Toophan SACLOS ATGM
 * Valfajr modern homing torpedo system
 * Ya-Ali ALCM
 * Ya Zahra short-range Air defence system
 * Zafar short-range, anti-ship cruise missile(ASCM)
 * Zelzal Artillery rocket:
 * Zelzal-1 heavy artillery rocket
 * Zelzal-2 610 mm long-range artillery rocket
 * Zelzal-3 610 mm longer range artillery rocket
 * Zolfaghar road-mobile single-stage Solid-propelled SRBM
 * Zoobin TV-guided air-to-surface missile

Iraq

 * Al-Samoud 2
 * Ababil-100
 * Al Fahd 300
 * Al Fahd 500
 * Al Hussein
 * Al Hijarah
 * Al Abbas
 * Badr 2000
 * Al-Tammuz
 * Al'Ubur
 * Jinin (missile)
 * Al Faw 150/200
 * Al-Barq
 * Al-Kasir

Israel

 * Arrow anti ballistic missile (ABM)
 * Barak 1 (naval point defense)
 * Barak 8 (naval area defense)
 * Delilah (cruise missile of several variants: drone, air-to-ground, possible antiradiation version as well)
 * David's Sling/Magic Wand (land-based MRAD system)
 * Derby (air-to-air, also known as the "Alto", with also a ground-to-air version for the SPYDER system)
 * Gabriel (ship-to-ship, shore-to-ship, and air-to-ship variants)
 * Iron Dome (land-based C-RAM and SHORAD system)
 * C-Dome (shipboard SHORAD system)
 * Jericho II IRBM (ground-to-ground ballistic)
 * Jericho III ICBM (ground-to-ground ballistic)
 * LAHAT (guided antitank)
 * LORA (ground-to-ground and sea-to-ground)
 * Nimrod (guided antitank and stand-off)
 * Popeye (air-to-ground cruise missile. USAF designation: AGM-142 Have Nap. Possibly larger derivatives exist as well, including a submarine-launched variant)
 * Python 5 (air-to-air, with also a ground-to-air version for the SPYDER system)
 * SkySniper (air-to-ground)
 * Sparrow (target missile)
 * Spike/Gil (man-portable antitank guided missile, tactical ground-to-ground (Spike NLOS))
 * Naval Spike (ship-to-ship/shore)
 * SPYDER (Python, Derby missiles) land-based SHORAD/MRAD system
 * Sea Breaker (anti ship/land attack cruise missile)

Italy

 * Alfa
 * Aspide
 * CAMM-ER "Common Anti-aircraft Modular Missile - Extended Range" (Italo-British)
 * Sea Killer/Marte
 * Otomat
 * Aster (missile family) (Franco-Italo)

Japan

 * AAM-1 (Type 69 air-to-air missile)
 * AAM-2 (Program was cancelled)
 * AAM-3 (Type 90 air-to-air missile)
 * AAM-4 (Type 99 air-to-air missile)
 * AAM-4B
 * AAM-5 (Type 04 air-to-air missile)
 * AAM-5B (Development)
 * ASM-1 (Type 80 air-to-ship missile)
 * ASM-1C (Type 91 air-to-ship missile)
 * ASM-2 (Type 93 air-to-ship missile)
 * ASM-2B
 * ASM-3
 * ASM-3A (Development)
 * ATM-1 (Type 64 antitank missile)
 * ATM-2 (Type 79 antitank missile)
 * ATM-3 (Type 87 antitank missile)
 * ATM-4 (Type 96 multipurpose missile system)
 * ATM-5 (Type 01 light antitank missile)
 * ATM-6 (medium-range multipurpose missile)
 * SAM-1 (Type 81 short-range surface-to-air missile) (SAM)
 * SAM-1B
 * SAM-1C
 * SAM-2 (Type 91 man-portable surface-to-air missile) (SAM)
 * SAM-2B
 * SAM-3 (Type 93 short-range surface-to-air missile)
 * SAM-4 (Type 03 medium-range surface-to-air missile)
 * SAM-4B (Development)
 * Type 11 short-range surface-to-air missile (SAM)
 * SSM-1 (Type 88 surface-to-ship missile)
 * SSM-1C
 * Type 12 Surface-to-Ship Missile
 * SSM-1B (Type 90 ship-to-ship missile)
 * SSM-2 (Type 17 ship-to-ship missile)
 * SM-3 Block-II/IIA (Joint development with the U.S.)
 * Type 07 (Type 07 Vertical Launched ASROC)

Nigeria

 * Ogbunigwe (multipurpose missile)

North Korea

 * Hwasong-1
 * Hwasong-3
 * Hwasong-5 (Scud-B)
 * Hwasong-6 (Scud-C)
 * Hwasong-7
 * Hwasong-9 (Scud-ER/ Scud-D/ Scud 2)
 * Hwasong-10
 * Hwasong-11 (KN-02 Toksa)
 * Hwasong-12
 * Hwasong-13
 * Hwasong-14
 * Hwasong-15
 * Hwasong-16
 * Pongae-5
 * Pukguksong-1, Pukguksong-2
 * Pukguksong-3
 * Pukguksong-4ㅅ/5ㅅ

Norway

 * Penguin (American designation AGM-119)
 * NASAMS (SLAMRAAM missile) (Norwegian-American) land-based SHORAD system
 * Naval Strike Missile
 * Joint Strike Missile (see Naval Strike Missile)

Pakistan

 * KRL Baktar-Shikan – ATGM
 * KRL Anza Mk.1, Mk.2, Mk.3 – MANPADS
 * KRL Hatf-I series – BRBM
 * NESCOM Nasr (Hatf-IX) – TBM
 * NESCOM Abdali – SRBM
 * NESCOM Ghaznavi – SRBM
 * NESCOM Shaheen-I series – SRBM
 * KRL Ghauri I – MRBM
 * KRL Ghauri II – MRBM
 * NESCOM Ababeel – MRBM, MIRV Capable
 * NESCOM Shaheen-II – MRBM
 * NESCOM Shaheen-III – MRBM
 * NESCOM Harbah — ship-launched antiship cruise missile and LACM
 * NESCOM Babur series (Hatf VII)
 * Babur 1 – LACM
 * Babur 1A – LACM
 * Babur 1B – LACM
 * Babur 2 – LACM
 * Babur 3 – SLCM/LACM
 * NESCOM Ra'ad (Hatf-VIII) – ALCM
 * NESCOM Ra'ad-II – long-range ALCM
 * NESCOM Barq – laser guided air-to-surface missile

Poland

 * Grom (Russo-Polish)
 * Piorun
 * Poprad (Grom, Piorun missiles) land-based VSHORAD system

Russia
The NATO reporting name of each missile is shown in parentheses behind the proper name.

Missiles:
 * 2K11 (SA-4 Ganef)
 * 2K22 (SA-19/SA-N-11 Grison)
 * 3M9 (SA-6 Gainful)
 * 3M55 (Russian: П-800 Оникс; English: Onyx), Yakhont (Russian: Яхонт; English: ruby), Kh-61, (SS-N-26 Strobile).
 * 4K10 (SS-N-6 Serb)
 * 4K18, R-27K (SS-NX-13 related to SS-N-6 Serb)
 * 4K40/4K51 (SS-N-2 Styx)
 * 4K60/4K65 (SA-N-3 Goblet)
 * 9K33 (SA-8/SA-N-4 Gecko)
 * 9K37 (SA-11/SA-N-7 Gadfly)
 * 9K38 (SA-17/SA-N-12 Grizzly)
 * 9K310 (SA-16 Igla)
 * 9K330/9K331/9K332 (SA-15/SA-N-9 Gauntlet)
 * 9K333 Verba (SA-25)
 * 9K720 Iskander (Russian: «Искандер»)(SS-26 Stone)
 * 82R (SS-N-15 Starfish)
 * 86R/88R (SS-N-16 Stallion)
 * GR-1 Global Rocket fractional orbital bombardment system missile (SS-X-10 Scrag)
 * Igla (SA-18/SA-N-10 Grouse)
 * Igla-1 (SA-16 Gimlet)
 * K-5 (AA-1 Alkali)
 * K-8 (AA-3 Anab)
 * K-9 (AA-4 Awl)
 * K-13 (AA-2 Atoll)
 * Kh-61
 * KSR-2 (AS-5 Kelt)
 * MR-UR-100 Sotka intercontinental ballistic missile (SS-17 Spanker)
 * P-1 (SS-N-1 Scrubber)
 * P-5 "Pyatyorka" (Russian: П-5 «Пятёрка»), (SS-N-3c Shaddock)
 * P-6 (SS-N-3a Shaddock)
 * P-7 "Pyatyorka" (SS-N-3b Shaddock)
 * P-35 "Progress" (SS-N-3c Shaddock)
 * P-270/Kh-41 long-range antiship missile (SS-N-22/ASM-MSS Sunburn)
 * P-700 Granit (SS-N-19 Shipwreck)
 * P-800 Oniks (Russian: П-800 Оникс; English: Onyx), Yakhont (Russian: Яхонт; English: ruby), 3M55, Kh-61, (SS-N-26 Strobile).
 * R-1 theater ballistic missile (SS-1 Scunner)
 * R-2 theater ballistic missile (SS-2 Sibling)
 * R-4 (AA-5 Ash)
 * R-5M rocket (SS-3 Shyster)
 * R-7 Semyorka intercontinental ballistic missile (SS-6 Sapwood)
 * R-9 Desna intercontinental ballistic missile (SS-8 Sasin)
 * R-11 tactical ballistic missile (SS-1b Scud)
 * R-12 Dvina theatre ballistic missile (SS-4 Sandal)
 * R-13 submarine-launched ballistic missile (SS-N-4 Sark)
 * R-14 Chusovaya theatre ballistic missile (SS-5 Skean)
 * R-15 submarine-launched ballistic missile
 * R-16 intercontinental ballistic missile (SS-7 Saddler)
 * R-21 submarine-launched ballistic missile (SS-N-5 Serb)
 * R-23 (AA-7 Apex)
 * R-26 intercontinental ballistic missile (SS-8 Sasin)

 * R-27 Zyb submarine-launched ballistic missile (SS-N-6 Serb)
 * R-27K, 4K18 (SS-NX-13)
 * R-27 (AA-10 Alamo)
 * R-29 Vysota (Russian: Р-29 Высота height, altitude) (SS-N-18 Stingray)
 * R-31 RSM-45 (SS-N-17 Snipe)
 * R-33 (AA-9 Amos)
 * R-36 intercontinental ballistic missile (SS-9 Scarp and SS-18 Satan)
 * R-37 (AA-13 Arrow)
 * R-39 missile (SS-N-20 Sturgeon)
 * R-40 (AA-6 Acrid)
 * R-46 intercontinental ballistic missile
 * R-60 (AA-8 Aphid)
 * R-73 (AA-11 Archer)
 * R-77 (AA-12 Adder)
 * R-300 Elbrus theatre ballistic missile (SS-1c Scud)
 * R-400 Oka mobile theatre ballistic missile (SS-23 Spider)
 * RS-24 intercontinental ballistic missile (SS-29) (Unknown)
 * RS-26 intercontinental ballistic missile.
 * RT-1 theater ballistic missile
 * RT-2 intercontinental ballistic missile (SS-13 Savage)
 * RT-2PM Topol mobile intercontinental ballistic missile (SS-25 Sickle)
 * RT-2UTTH Topol M mobile intercontinental ballistic missile (SS-27)
 * RT-15 mobile theatre ballistic missile (SS-14 Scamp)
 * RT-20 intercontinental ballistic missile (SS-15 Scrooge)
 * RT-21 Temp 2S mobile intercontinental ballistic missile (SS-16 Sinner)
 * RT-21M Pioner mobile medium range ballistic missile (SS-20 Saber)
 * RT-23 Molodets intercontinental ballistic missile (SS-24 Scalpel)
 * RT-25 theatre ballistic missile
 * S-25 (SA-1 Guild)
 * S-75 (SA-2/SA-N-2 Guideline)
 * S-125 (SA-3/SA-N-1 Goa)
 * S-200 (SA-5 Gammon)
 * S-300P (SA-10 Grumble/SA-N-6/SA-20 Gargoyle/SA-X-21 Triumf)
 * S-300V (SA-12 Gladiator/Giant)
 * S-300PMU-1/2 (SA-20 Gargoyle)
 * S-400 (SA-21 Growler)
 * Sakar-20
 * Strela-1 (SA-9 Gaskin)
 * Strela-2 (SA-7/SA-N-5 Grail)
 * Strela-3 (SA-14/SA-N-8 Gremlin)
 * Strela-10 (SA-13 Gopher)
 * RS-28 Sarmat (Russian: РС-28 Сармат) (SS-X-30)
 * TR-1 Temp theater ballistic missile (SS-12 / SS-22 Scaleboard)
 * UR-100 intercontinental ballistic missile (SS-11 Sego)
 * UR-100N intercontinental ballistic missile (SS-19 Stiletto)
 * UR-200 intercontinental ballistic missile (SS-X-10 Scrag)
 * Yakhont (Russian: Яхонт; English: ruby)

By NATO name

 * AA-1 Alkali / Kaliningrad K-5
 * AA-2 Atoll / Vympel K-13
 * AA-3 Anab / Kaliningrad K-8
 * AA-4 Awl / K-9
 * AA-5 Ash / R-4
 * AA-6 Acrid / R-40
 * AA-7 Apex / R-23
 * AA-8 Aphid / R-60
 * AA-9 Amos / R-33
 * AA-10 Alamo / R-27
 * AA-11 Archer / R-73
 * AA-12 Adder / R-77
 * AA-13 Arrow / R-37
 * AS-1 Kennel antiship
 * AS-2 Kipper antiship
 * AS-3 Kangaroo nuclear antiship
 * AS-4 Kitchen antiship
 * AS-5 Kelt air-to-surface
 * AS-6 Kingfisher antiship
 * AS-7 Kerry
 * AS-8 (9M114V Sturm-V)
 * AS-9 'Kyle' (H-28)
 * AS-10 'Karen' (H-25)
 * AS-11 'Kilter' (H-58 Izdeliye)
 * AS-12 'Kegler' (H-25MP, H-27PS)
 * AS-13 'Kingbolt' (H-59 Ovod)
 * AS-14 'Kedge' (H-29)
 * AS-15 'Kent' (H-55/H-65S Izdeliye)
 * AS-16 'Kickback' (H-15)
 * AS-17 'Krypton' (H-31)
 * AS-18 Kazoo (H-59M Ovod-M)
 * AS-19 'Koala' (3M25A Meteorit-A)
 * AS-20 'Kayak' (H-35/H-37 Uran)
 * AS-21 (Gela, P-750 Grom)
 * (SA-1 Guild) S-25
 * (SA-2/SA-N-2 Guideline) S-75
 * (SA-3/SA-N-1 Goa) S-125
 * (SA-N-3 Goblet) 4K60/4K65
 * (SA-4 Ganef) 2K11
 * (SA-5 Gammon) S-200
 * (SA-6 Gainful) 3M9
 * (SA-7/SA-N-5 Grail) Strela-2
 * (SA-8/SA-N-4 Gecko) 9K33
 * (SA-9 Gaskin) Strela-1
 * (SA-10 Grumble/SA-N-6/SA-20 Gargoyle/SA-X-21 Triumf) S-300P
 * (SA-11/SA-N-7 Gadfly) 9K37
 * (SA-12 Gladiator/Giant) S-300V
 * (SA-13 Gopher) Strela-10
 * (SA-14/SA-N-8 Gremlin) Strela-3
 * (SA-15/SA-N-9 Gauntlet) 9K330/9K331/9K332
 * (SA-16 Gimlet) Igla-1
 * (SA-17/SA-N-12 Grizzly) 9K38
 * (SA-18/SA-N-10 Grouse) Igla
 * (SA-19/SA-N-11 Grison) 2K22
 * (SA-20 Gargoyle) S-300PMU-1/2
 * (SA-21 Growler) S-400
 * (SA-25) 9K333 Verba

 * SS-1 Scunner / R-1
 * SS-1b Scud / R-11
 * SS-1c Scud / R-300
 * SS-2 Sibling / R-2
 * SS-3 Shyster / R-5
 * SS-4 Sandal / R-12 Dvina
 * SS-5 Skean / R-14 Chusovaya
 * SS-6 Sapwood / R-7 Semyorka
 * SS-7 Saddler / R-16
 * SS-8 Sasin / R-9 Desna
 * SS-8 Sasin / R-26 (mistaken identification by NATO)
 * SS-9 Scarp / R-36
 * SS-10 Scrag / Global Rocket 1
 * SS-11 Sego / UR-100
 * SS-12 Scaleboard / TR-1 Temp
 * SS-13 Savage / RT-2
 * SS-14 Scamp / RT-15
 * SS-15 Scrooge / RT-20
 * SS-16 Sinner / RT-21 Temp 2S
 * SS-17 Spanker / MR-UR-100 Sotka
 * SS-18 Satan / R-36M
 * SS-19 Stiletto / UR-100N
 * SS-20 Saber / RT-21M Pioner
 * SS-21 Scarab / OTR-21 Tochka
 * SS-22 Scaleboard / TR-1 Temp
 * SS-23 Spider / R-400 Oka
 * SS-24 Scalpel / RT-23 Molodets
 * SS-25 Sickle / RT-2PM Topol
 * SS-26 Stone / 9K720 Iskander (Russian: «Искандер»)
 * SS-27 / RT-2UTTH Topol M
 * SS-29 / RS-24 intercontinental ballistic missile
 * SS-N-1 Scrubber / P-1
 * SS-N-2 Styx / 4K40/4K51
 * SS-N-3c Shaddock / P-5 Pyatyorka (Russian: П-5 «Пятёрка»)
 * SS-N-3a Shaddock / P-6
 * SS-N-3b Shaddock / P-7
 * variant of SS-N-3 Shaddock P-35 Progress
 * SS-N-4 Sark / R-13
 * SS-N-5 Serb / R-21
 * SS-N-6 Serb / R-27
 * SS-N-15 Starfish / 82R
 * SS-N-16 Stallion / 86R/88R
 * SS-N-17 Snipe / R-31 RSM-45
 * SS-N-18 Stingray / R-29 Vysota
 * SS-N-19 Shipwreck / P-700 rocket
 * SS-N-20 Sturgeon / R-39
 * SS-N-21 Sampson / Raduga Kh-55
 * SS-N-22 Sunburn / P-270
 * SS-N-23 Skiff / R-29 Vysota, R-29 Vysota, R-29RMU Sineva
 * SS-N-25 Switchblade / Kh-35
 * SS-N-26 Strobile.P-800 Oniks (Russian: П-800 Оникс; English: Onyx), Yakhont (Russian: Яхонт; English: ruby), 3M55, Kh-61
 * SS-N-27 Sizzler / 3M-54 Klub Kalibr
 * SS-X-10 Scrag / Global Rocket 1 / GR-1
 * SS-X-10 Scrag / UR-200
 * SS-X-30 / RS-28 Sarmat (Russian: РС-28 Сармат)
 * SS-NX-13 / 4K18, R-27K related to SS-N-6

Serbia

 * Advanced Light Attack System (ALAS) long-range multipurpose guided missile
 * Grom-B (Serbo-Russian)
 * Šumadija (multiple rocket launcher) Uses Jerina 1 ( 285 km ballistic missile)

RSA Series
(Above missile prototypes made by Houwteq, none entered production)
 * RSA-1 (Variant of the Jericho II second stage for use as a mobile missile)
 * RSA-2 (Variant of the Jericho II)
 * RSA-3 (Variant of the Shavit)
 * RSA-4 (Upper stages of the Shavit with a heavy first stage)

Other
(Above missiles made by Denel Dynamics)
 * A-Darter
 * R-Darter
 * ZT3 Ingwe
 * Mokopa
 * MUPSOW
 * Torgos Air-Launched Cruise Missile
 * Umkhonto
 * Umbani

South Korea
Legend: In South Korean service

 * Baeksangeo (White Shark) heavyweight torpedo
 * Cheolmae-2 (KM-SAM) medium-range surface-to-air missile
 * Cheongsangeo (Blue Shark) lightweight torpedo
 * Chiron surface-to-air missile
 * C-Star ship-to-ship missile
 * KL-SAM ground-based long-range surface-to-air SAM/ABM
 * KAGM air-to-ground missile
 * K-BATS multipayload tactical ballistic missile system
 * K-LOGIR 2.75 inch (70 mm) missile
 * Haeseong I antiship missile
 * Haeseong II ship-to-surface cruise missile
 * Haeseong III anti ship cruise missile
 * Hongsangeo (Red Shark) rocket-based torpedo and antisubmarine missile (K-ASROC)
 * Baekgom tactical ballistic missile
 * Hyunmoo-1 tactical ballistic missile
 * Hyunmoo-2A tactical ballistic missile
 * Hyunmoo-2B tactical ballistic missile
 * Hyunmoo-2C tactical ballistic missile
 * Hyunmoo-3A tactical cruise missile
 * Hyunmoo-3B tactical cruise missile
 * Hyunmoo-3C tactical cruise missile
 * Hyunmoo-3D tactical cruise missile
 * Hyunmoo-4 ballistic missile
 * Pegasus surface-to-air missile
 * K-SAAM ship-based anti missile missile (ABM)
 * Hyun-Gung anti tank missile
 * K-RAM surface-to-air missile (SAM)
 * Leaflet 130 mm ship-to-ship guided missile
 * Tactical Flag ship-to-surface guided missile
 * KGGB GPS-guided air-to-surface missile

Sweden
Legend: In European service
 * Anti-tank
 * Rb 53 ("Bantam")
 * RBS 56 BILL
 * RBS 56B BILL 2
 * RB 57 (NLAW, UK, Swedish, Swiss made)
 * Anti-air
 * Rb 05 ("AT3")
 * RBS 70 Systems based on the RBS-70:
 * ASRAD-R (Swedish-German system)
 * MSHORAD (Bolide missile land-based VSHORAD system)
 * RBS 23 ("BAMSE")
 * Rb 71 ("Skyflash" licence made)
 * JRBS-98 ("IRIS-T" air-air, European)
 * LVRBS-98 ("IRIS-T SLS" surface-to-air, European)
 * Rb 101 ("Meteor" missile, European)
 * Anti-ship

 * RB 304
 * Rb 315
 * Rb 04
 * Rb 08
 * RBS-15
 * Rb 17 (Saab Bofors Dynamics derivative of Hellfire missile)

 * Air-to-surface
 * KEPD 350 ("Taurus", Germano-Swedish)

 * Prototypes
 * Anti-tank missile
 * Anti-Air missile
 * Rb 321 (active radar homing air-air missile)
 * Rb 322 (surface-to-air missile)
 * S225XR (derivative of Rb 71 "Skyflash", British-Swedish collaboration)
 * Rb 72: IR guided for the Saab 37 Viggen ("Jaktviggen")
 * Rb 73 (further development of S225XR with ramjet, base for Meteor missile)
 * Anti-ship missile
 * Rb 310 and Rb 311 (V-1 copies)
 * Rb 312, Rb 313, Rb 315, Rb 316
 * Air-to-surface missile
 * Rb 300, Rb 301, Rb 302, Rb 303 and Rb 304
 * Nuclear missile
 * Rb 330
 * Rb 08

Switzerland
Legend: In European service

 * Cobra (Germano-Swiss)
 * Cobra 2000 (Germano-Swiss)
 * Mosquito (Germano-Swiss)
 * Mamba (Germano-Swiss)
 * MIM-146 ADATS (Swiss-American)
 * RSA
 * RSC-54
 * RSC-56
 * RSC-57
 * RSC/RSD 58
 * RSE Kriens
 * NLAW (warhead made by Saab Bofors Dynamics Switzerland Ltd, former RUAG)
 * Missile Moyenne Portée ("MMP" or "Akeron MP", warhead made by Saab Bofors Dynamics Switzerland Ltd, former RUAG)

Taiwan
Legend: In Taiwanese service

 * Hsiung Feng I (HF-1) (anti-ship)
 * Hsiung Feng II (HF-2) (anti-ship)
 * Hsiung Feng IIE (HF-2E) (long range land-attack cruise missile)
 * Hsiung Feng III (HF-3) (supersonic anti-ship and/or land-attack cruise missile)
 * Sky Bow I (TK-1) (SAM)
 * Sky Bow II (TK-2) (SAM)
 * Sky Bow III (TK-3) (SAM)
 * Sky Spear (short range SSBM)
 * Sky Horse (ballistic missile)
 * Sky Sword I (TC-1) (air-to-air)
 * TC-1L (SAM variant)
 * Sea TC-1 (Naval variant)
 * Sky Sword II (TC-2) (air-to-air)
 * TC-2A (Anti-radiation variant)
 * TC-2N (Naval variant)
 * TC-2C (Advanced air-to-air variant)
 * Wan Chien (air launched cruise missile)
 * Yun Feng (supersonic long-range cruise missile)

Turkey
Legend: In Turkish service
 * Karaok, man-portable short-range Anti-tank guided missile
 * Roketsan TANOK, Laser Guided Anti-Tank Missile
 * Roketsan CİDA, Guided missile
 * Laser-guided mini missile system, short-range, laser-guided missile
 * Roketsan METE, Laser-guided Miniature Missile
 * Roketsan Cirit, laser-guided air-to-surface missile
 * OMTAS, Medium-range, anti-tank Air-to-surface missile
 * UMTAS, Long-range, anti-tank Air-to-surface missile
 * Roketsan Bora, Tactical Ballistic Missile
 * Roketsan J-600T Yıldırım, Tactical Ballistic Missile
 * Roketsan TAYFUN, Short-range ballistic missile
 * PMADS, naval/land-based Surface-to-air missile
 * Sungur Air Defence Missile System, Surface-to-air missile
 * Sungur, man-portable air defense system
 * Aselsan Hisar Air-defense System
 * Aselsan Hisar-A+, surface-to-air missile,
 * Aselsan Hisar-O+, surface-to-air missile
 * Aselsan Hisar-U, surface-to-air missile
 * Aselsan Siper, surface-to-air missile
 * GÖKTUĞ Air-to-air Missile Program
 * Bozdoğan, air-to-air missile
 * Gökdoğan, air-to-air missile
 * Akdoğan, air-to-air missile
 * Gökhan, air-to-air missile
 * TUBITAK-SAGE KUZGUN
 * Kuzgun-TJ, Turbojet-powered, Air-to-surface missile.
 * Kuzgun-KY, Solid fuel Rocket-powered, Air-to-surface missile.
 * Kuzgun-ER, Turbojet-powered, Air-to-surface missile
 * Kuzgun-EW, Air-to-surface missile that is capable of carrying Electronic warfare payload.
 * Roketsan SOM, Anti-ship, Air-launched Cruise Missile
 * ROKETSAN ÇAKIR Missile Family, Anti-ship, Air-to-surface, surface-to-surface Cruise Missile
 * Çakır CR
 * Çakır AS
 * Çakır LIR
 * Çakır SW
 * Roketsan Atmaca, Anti-ship, Surface-to-surface Cruise Missile
 * Kara Atmaca, Surface-to-surface Cruise Missile
 * Akbaba, Anti-radiation Missile (ARM)
 * Roketsan Gezgin, Surface-to-surface, Long-range Cruise Missile, It'll be equivalent to Tomahawk missiles.
 * TRLG-122, Short-range Surface-to-surface missile
 * TRLG-230, Medium-range Surface-to-surface missile
 * TRG-300 Tiger, Long-range Surface-to-surface missile
 * TRG-230-iHA, Supersonic, Air-to-surface missile

Ukraine
Legend: In Ukrainian service

 * Dnipro
 * Hrim-2
 * Neptune
 * Sapsan
 * Vilkha

United Kingdom

 * ALARM
 * ASRAAM (AIM-132) "advanced short-range air-to-air missile"
 * Bloodhound long-range surface-to-air missile (SAM)
 * Blowfish submarine mast VSHORAD system
 * Blowpipe    man-portable surface-to-air missile (SAM)
 * Blue Steel nuclear "stand-off bomb"
 * Blue Streak nuclear "stand-off missile" (never produced)
 * Blue Water – surface-to-surface nuclear missile
 * Brakemine WW II surface-to-air missile project
 * Brimstone
 * CAMM "Common Anti-aircraft Modular Missile"
 * Fairey Fireflash air-to-air missile
 * Fairey Stooge anti ship missile
 * Fire Shadow
 * Firestreak air-to-air missile
 * Green Cheese
 * Javelin man-portable surface-to-air missile (SAM)
 * Malkara (Australian-British)
 * Martlet
 * Polaris (British-American version)
 * Rapier battlefield surface-to-air missile (SAM)
 * Red Dean
 * Red Hebe
 * Red Top air-to-air missile
 * Sea Cat shipboard surface-to-air missile (SAM)
 * Sea Dart shipboard surface-to-air missile
 * Sea Eagle air launched anti-ship missile
 * Sea Skua air launched anti-ship missile
 * Sea Slug shipboard surface-to-air missile
 * Sea Wolf shipboard surface-to-air missile
 * Skybolt ALBM nuclear "stand-off missile" (British-American version) (never produced)
 * Skyflash - British-produced equivalent to American "Sparrow" missile
 * SPEAR "Selective Precision Effects At Range"
 * Starburst
 * Starstreak
 * Swingfire antitank missile
 * Thunderbird
 * Tigercat
 * UB.109T cruise missile (cancelled)
 * Vickers Vigilant

Missile Design Series (Unified)
US DoD 4120 Mission Design Series (MDS) Designators and Symbols for Guided Missiles, Rockets, Probes, Boosters, and Satellites.

Sample Missile MDS – "BGM-109G" or LGM-30G-Silo Launched Surface Attack Guided Missile

Legend:

The list of U. S. missiles, sorted by ascending MDS number:

 * MGM-1 Matador
 * MGR-1 Honest John
 * RIM-2 Terrier
 * MGR-3 Little John
 * MIM-3 Nike-Ajax
 * AIM-4 Falcon
 * MGM-5 Corporal
 * RGM-6 Regulus
 * POLE-015 0-MAN - SERIES/SURFACE TO AIR/AIR TO SURFACE
 * RIM-8 Talos
 * CIM-10 Bomarc
 * PGM-11 Redstone
 * AGM-12 Bullpup
 * MGM-13 Mace
 * MIM-14 Nike-Hercules
 * RGM-15 Regulus II
 * CGM-16 / HGM-16 Atlas
 * PGM-17 Thor
 * MGM-18 Lacrosse
 * PGM-19 Jupiter
 * MIM-23 Hawk
 * RIM-24 Tartar
 * LGM-25 Titan
 * AIM-26 Falcon
 * UGM-27 Polaris
 * AGM-28 Hound Dog
 * MGM-29 Sergeant
 * MGM-31 Pershing
 * BGM-34 Firebee
 * LGM-35 Sentinel
 * FIM-43 Redeye
 * UUM-44 SUBROC
 * AGM-45 Shrike
 * MIM-46 Mauler
 * AIM-47 Falcon
 * AGM-48 Skybolt (cancelled)
 * LIM-49 Nike Zeus/Spartan
 * RIM-50 Typhon LR
 * MGM-51 Shillelagh
 * MGM-52 Lance
 * AGM-53 Condor
 * AIM-54 Phoenix
 * RIM-55 Typhon MR
 * RGM-59 Taurus (cancelled)
 * AIM-54 Phoenix
 * RIM-55 Typhon MR
 * RGM-59 Taurus (cancelled)

 * AGM-62 Walleye
 * AGM-63 (cancelled)
 * AGM-64 Hornet
 * AGM-65 Maverick
 * AIM-68 Big Q (cancelled)
 * AGM-69 SRAM
 * LEM-70 Minuteman ERCS
 * MIM-72 Chaparral
 * UGM-73 Poseidon
 * BGM-75 AICBM (cancelled)
 * AGM-76 Falcon
 * FGM-77 Dragon
 * AGM-78 Standard ARM
 * AGM-79 Blue Eye (cancelled)
 * AGM-80 Viper
 * AIM-82 (cancelled)
 * AGM-83 Bulldog (cancelled)
 * RIM-85 (cancelled)
 * AGM-87 Focus
 * UGM-89 Perseus (cancelled)
 * man-portable surface-to-air (SAM)
 * AIM-95 Agile (cancelled)
 * UGM-96 Trident I
 * AIM-97 Seekbat (cancelled)
 * LIM-99
 * LIM-100
 * RIM-101 (cancelled)
 * BGM-110 SLCM
 * (GBU-15)
 * RIM-113 SIRCS
 * (Germano-American)
 * LGM-118 Peacekeeper
 * RIM-101 (cancelled)
 * BGM-110 SLCM
 * (GBU-15)
 * RIM-113 SIRCS
 * (Germano-American)
 * LGM-118 Peacekeeper
 * (Germano-American)
 * LGM-118 Peacekeeper
 * LGM-118 Peacekeeper

 * CGM-121B Seek Spinner
 * AGM-122 Sidearm
 * AGM-123 Skipper
 * AGM-124 Wasp (cancelled)
 * UUM-125 Sea Lance (cancelled)
 * AGM-129 ACM
 * AGM-130 Ripper
 * AGM-131 SRAM II (cancelled)
 * MGM-134 Midgetman
 * ASM-135 ASAT
 * AGM-136 Tacit Rainbow (cancelled)
 * AGM-137 TSSAM (cancelled)
 * MIM-146 ADATS (Swiss-American)
 * AIM-152 AAAM (cancelled)
 * AGM-153 (cancelled)
 * MGM-157 EFOGM
 * AGM-159 JASSM (cancelled)
 * MGM-166 LOSAT (cancelled)
 * AGM-169 JCM (cancelled)
 * FGM-172 SRAW
 * MGM-157 EFOGM
 * AGM-159 JASSM (cancelled)
 * MGM-166 LOSAT (cancelled)
 * AGM-169 JCM (cancelled)
 * FGM-172 SRAW
 * MGM-166 LOSAT (cancelled)
 * AGM-169 JCM (cancelled)
 * FGM-172 SRAW
 * MGM-166 LOSAT (cancelled)
 * AGM-169 JCM (cancelled)
 * FGM-172 SRAW
 * AGM-169 JCM (cancelled)
 * FGM-172 SRAW
 * FGM-172 SRAW

Joint Designation System of 1947
Test Vehicle Designations

Sequence Numbers:

Air Force: Consecutive numerical sequence for each missile mission type.

Army: Single numerical sequence until 1948 when the sequence numbers were restarted.

Navy: Initially even numbers transitioning to sequential.

Sample Vehicle Designation "SSM-A-2 Navaho"

Sample Test Vehicle Designation "RTV-G-1 WAC Corporal"

United States Air Force Designation Systems
United States Air Force Designation System, 1947–1951

The list of missiles sorted by ascending Air Force 1947–1951 designations.

 * AAM-A-1 Firebird
 * AAM-A-2 Falcon
 * ASM-A-1 TARZON
 * ASM-A-2 RASCAL
 * LTV-A-1 Doodle Bug
 * PTV-A-1
 * RTV-A-1
 * RTV-A-2 HIROC
 * RTV-3 NATIV

 * RTV-A-4 Shrike
 * RTV-A-5
 * SAM-A-1 GAPA
 * SSM-A-1 Matador
 * SSM-A-2 Navaho
 * SSM-A-3 Snark
 * SSM-A-4 Navaho II
 * SSM-A-5 Boojum
 * SSM-A-6 Navaho III

United States Air Force Designation System, 1951–1955

During this timeframe, the U.S. Air Force treated missiles as pilotless aircraft.

The list of missiles sorted by ascending Air Force 1951–1955 designations.

 * B-61 Matador
 * B-62 Snark
 * B-63 RASCAL
 * B-64 Navaho
 * B-65 Atlas
 * B-67 Crossbow

 * F-98 Falcon
 * F-99 Bomarc
 * F-104 Falcon1

 * X-7
 * X-8
 * X-9 Shrike
 * X-10
 * X-112
 * X-122
 * X-17

1A version of the Falcon missile was briefly designated the F-104 before it was redesignated as the F-98.

2The X-11 and X-12 designations were assigned to one and three engine test missiles that would have been used to develop a five-engine version of the Atlas missile.

United States Air Force Designation System, 1955–1963

For all basic missions except GAR (which started at 1) the sequence number started after 67 which was the last bomber designation used for guided missiles.

Sample Air Force 1955–1963 designation: "XSM-73"

The list of missiles sorted by ascending Air Force 1955–1963 designations.

 * TM-61 Matador
 * SM-62 Snark
 * GAM-63 RASCAL
 * SM-64 Navaho
 * SM-65 Atlas
 * GAM-67 Crossbow
 * SM-68 Titan
 * IM-69 Bomarc
 * IM-70 Talos
 * GAM-71 Buck Duck
 * SM-73 Bull Goose
 * SM-74
 * SM-75 Thor
 * TM-76 Mace
 * GAM-77 Hound Dog
 * SM-78

 * GAM-79 White Lance
 * SM-80 Minuteman
 * RM-81 Agena
 * RM-82 Loki-Dart
 * GAM-83 Bullpup
 * RM-84 Aerobee-Hi
 * RM-85 Nike-Cajun
 * RM-86 Exos
 * GAM-87 Skybolt
 * SRM-88 Rocksonde 200
 * RM-89 Blue Scout I
 * RM-90 Blue Scout II
 * RM-91 Blue Scout Junior
 * RM-92 Blue Scout Junior
 * IM-99 Bomarc
 * AIM-101 Sparrow

 * GAR-1 Falcon
 * GAR-2 Falcon
 * GAR-3 Falcon
 * GAR-4 Falcon
 * GAR-5 Falcon
 * GAR-6 Falcon
 * GAR-8 Sidewider
 * GAR-9 Falcon
 * GAR-11 Nuclear Falcon

United States Navy Designation Systems
United States Navy Designation System 1941 – 1945

The list of missiles sorted by ascending Navy 1941 – 1945 designations.

 * Interstate BDR
 * LBD Gargoyle
 * LBE-1 Glomb
 * LBP-1 Glomb
 * LBT-1 Glomb

United States Navy Designation System 1946 – 1947

The list of missiles sorted by ascending Navy 1946–1947 designations.

 * KAM Little Joe
 * KAN Little Joe
 * KA2N Gorgon IIA
 * KA3N Gorgon IIIA
 * KAQ Lark
 * KAS Sparrow
 * KAY Lark
 * KGN Gorgon IIC

 * KGW Loon
 * KSD Gargoyle
 * KUD Gargoyle
 * KUM Gorgon IV
 * KUN Gorgon IIC
 * KU2N Gorgon IIA
 * KU3N Gorgon III
 * KUW Loon

United States Navy Designation System 1947 – 1963

The list of missiles sorted by ascending Navy 1947–1963 designations.

 * AAM-N-2 Sparrow I
 * AAM-N-3 Sparrow II
 * AAM-N-4 Oriole
 * AAM-N-5 Meteor
 * AAM-N-6 Sparrow III
 * AAM-N-7 Sidewinder
 * AAM-N-9 Sparrow X
 * AAM-N-10 Eagle
 * AAM-N-11 Phoenix
 * ASM-N-2 Bat
 * ASM-N-4 Dove
 * ASM-N-5 Gorgon V
 * ASM-N-6 Omar
 * ASM-N-7 Bullpup
 * ASM-N-8 Corvus
 * ASM-N-10 Shrike
 * ASM-N-11 Condor

 * AUM-N-4 Diver
 * AUM-N-6 Puffin
 * SAM-N-2 Lark
 * SAM-N-4 Lark
 * SAM-N-6 Talos
 * SAM-N-7 Terrier
 * SAM-N-8 Zeus
 * SAM-N-8 Typhon LR
 * SAM-N-9 Typhon MR
 * SSM-N-2 Triton
 * SSM-N-4 Taurus
 * SSM-N-6 Rigel
 * SSM-N-8 Regulus
 * SSM-N-9 Lacrosse
 * SSM-N-9 Regulus II
 * SUM-N-2 Grebe
 * CTV-N-2 Gorgon IIC
 * CTV-N-4 Gorgon IIA

 * CTV-N-6 Gorgon IIIA
 * CTV-N-8 Bumblebee STV
 * CTV-N-9 Lark
 * CTV-N-10 Lark
 * LTV-N-2 Loon
 * LTV-N-4
 * PTV-N-2 Gorgon IV
 * PTV-N-4 Bumblebee BTV
 * RTV-N-2 Gargoyle
 * RTV-N-4 Gorgon IIIC
 * RTV-N-6 Bumblebee XPM
 * RTV-N-8 Aerobee
 * RTV-N-10 Aerobee
 * RTV-N-12 Viking
 * RTV-N-13 Aerobee 150
 * RTV-N-15 Pollux
 * RV-N-16 Oriole

United States Army Designation Systems
United States Army Designation System 1941 – 1947

The list of missiles sorted by ascending Army 1941–1947 designations.

 * JB-1 Bat
 * JB-2 Doodle Bug
 * JB-3 Tiamet
 * JB-4 Project MX-607
 * JB-5 Project MX-595
 * JB-6 Project MX-600
 * JB-7 Project MX-605
 * JB-8 GAPA
 * JB-9 Project MX-626
 * JB-10 Bat

United States Army Designation System 1948 – 1955

The list of missiles sorted by ascending Army 1948 – 1955 designations.

 * RTV-G-1 WAC Corporal
 * RTV-G-2 Corporal E
 * RTV-G-3 Hermes II
 * RTV-G-4 Bumper
 * CTV-G-5 Hermes A-1
 * RTV-G-6 Hermes B-1
 * SAM-G-7 Nike Ajax
 * SSM-G-8 Hermes A-3A
 * SSM-G-9 Hermes B-2
 * RTV-G-10 Hermes A-2
 * SSM-G-12 Martin Lacrosse
 * SSM-G-13 Hermes A-2

 * PGM-11 Redstone
 * SSM-G-15 Hermes A-1
 * SSM-G-16 Hermes A-3B
 * SSM-G-17 Corporal
 * SAM-A-18 Hawk
 * SAM-A-19 Plato
 * RV-A-22 Lark
 * SSM-A-23 Dart
 * SAM-A-25 Nike Hercules
 * SSM-A-27 Sergeant

United States Army Designation System 1955 – 1963

The list of missiles sorted by ascending Army 1955–1963 designations.

 * M1 Nike-Ajax
 * M2 Corporal
 * M3 Hawk
 * M4 Lacrosse
 * M6 Nike-Hercules
 * M8 Redstone
 * M9 Redstone
 * M13 Shillelagh
 * XM14 Pershing
 * M15 Sergeant
 * M16 Hawk
 * M18 Hawk
 * XM19 Pershing
 * M50 Honest John

United States Undesignated Missiles
The list of undesignated United States missiles sorted alphabetically:

 * A-1
 * Affordable Weapon
 * Alpha Draco
 * ALVRJ
 * Aries
 * APKWS
 * ASALM
 * ATASK
 * Athena
 * Bold Orion
 * Brazo
 * Caleb
 * Caster 4B
 * Cherokee
 * Compact Kinetic Energy Missile
 * Cree
 * Crow
 * D-40 Cannonball

 * ERAM
 * ERIS
 * FABMDS
 * Farside
 * FLAGE
 * Flying Bomb
 * GBI
 * HAVE DASH II
 * HEDI
 * Hera
 * HGV
 * HIBEX
 * High Virgo
 * HOE
 * HOPI
 * HTV
 * HVM
 * HyFly

 * Jindivik1
 * Kettering Bug
 * LMAMS
 * LAM
 * LASRM
 * LOCAAS
 * M30 Guided MRLS
 * Miniature Hit-to-Kill Missile
 * NOTSNIK
 * PAM
 * PLV
 * Pogo
 * Pogo-Hi
 * Private
 * Rapier2
 * RATTLRS
 * RSC-51
 * Pershing II
 * Senior Prom

 * Sergent-Hydac
 * Shavetail
 * SIAM
 * Skokie I
 * Skokie II
 * SLAM
 * Spike
 * Sprint
 * SR19/SR19
 * SRALT
 * STARS
 * Storm
 * T-16
 * T-22
 * Talos-Sergeant-Hydac
 * THAAD
 * Trailblazer 2
 * Wagtail
 * Wizard

1Australian target missile briefly used by the United States Navy.

2The United States procured Rapier missile systems for the air defense of United States Air Force Bases in the United Kingdom.

United States Missiles with X Designations
The list of X designated United States missiles numerically:

 * X-7
 * X-8
 * X-9 Shrike
 * X-10
 * X-11
 * X-12
 * X-17
 * X-41
 * X-42
 * X-43 Hyper-X
 * X-51

title: List of missiles by country


text:
Awkward Thought

Awkward Thought is a New York hardcore punk band that was formed in the 1990s.

After numerous compilation appearances and two demo tapes, Awkward Thought released their first full-length album Mayday, consisting of seventeen songs, on an American label Blackout Records in 2000; the album was released by I Scream Records in Europe. Exclaim! called the album "particularly outstanding" solid and "appeal[ing]" to hardcore fans of 1980s music. Awkward Thought did a full coast-to-coast United States tour in summer 2000.

In 2001, Awkward Thought released a CD/EP titled Fear Not on Grapes of Wrath Records. Grapes of Wrath is a division of Coretex Records, which is based in Berlin, Germany. Awkward Thought toured Europe in summer 2001.

In summer 2002, Awkward Thought did a full UK tour.

Also in 2002, Awkward Thought released their second full-length CD, Ruin a Good Time, on I Scream Records in Europe, and then toured Europe in fall 2002. The Ruin A Good Time CD was released in the US in 2003 by Thorp Records. The European CD and the American CD had different artwork and layouts.

title: Awkward Thought


text:
Cabela's

Cabela's Inc. is an American retailer that specializes in hunting, fishing, boating, camping, and other outdoor recreation merchandise. The chain was founded by Richard N. Cabela and Jim Cabela in 1961. Cabela's was acquired by Springfield, Missouri-based Bass Pro Shops in 2017 and has been a subsidiary since then. The brand’s retail locations feature wildlife exhibits and outdoor designs, and are viewed as tourist attractions.

History

The company that would become a sporting goods reseller and chain was started in December of 1961 in Chappell, Nebraska. Richard (Dick) N. Cabela purchased $45 worth of fishing flies at a furniture expo in Chicago which he then advertised for sale in a local newspaper advertisement. When his first effort produced only one response, he placed an ad in a national magazine, Sports Afield, which was more successful. Cabela and his wife, Mary, mailed the orders and kept a record of all names and addresses. In 1963, Cabela's brother Jim joined the company. The mimeographed catalog became a printed catalog, and the operation moved into the basement of a family store and then to a former American Legion Hall. In 1968, the company moved again into a former John Deere dealer facility in Sidney, Nebraska. Cabela's then sold fishing gear as well as equipment for hunting, backpacking, and other outdoor activities. In 1991, a 75,000-square-foot retail store was opened in Sidney. More stores were built, decorated with outdoor scenery, mounted animals, and aquariums. Some stores included shooting ranges and archery ranges. By 2014, there were 50 stores across the U.S. and Canada.

On February 17, 2014, founder Dick Cabela died at his home in Sidney, Nebraska, at the age of 77.

About half of Cabela's sales come from hunting-related merchandise with about a third derived from the sale of firearms, ammunition and accessories in 2012. Additionally, in 2012 30% of revenue came from direct sales (through catalog and online orders), and 59% from physical retail stores. The remaining 11% of revenue came from its financial subsidiary and credit card business.

In 1996, Gander Mountain, prior to declaring bankruptcy, sold its mail order business to Cabela's with a non-compete clause. In 2007, Cabelas brought suit against them to prevent their re-entry into the mail-order business. Gander Mountain won the lawsuit and began selling online as well.

In February 2013, Cabela's sued Gander Mountain for patent infringement over a fold-up cot that Gander was selling. In December 2013, Gander sued Cabela's for cybersquatting.

In March 2014, Cabela's sold their recreational real estate division, Cabela's Trophy Properties, to Sports Afield. The name changed to Sports Afield Trophy Properties.

In January 2016, Cabela's sold their Outdoor Adventures & T.A.G.S. divisions to Worldwide Trophy Adventures.

On October 3, 2016, Bass Pro Shops announced an agreement to acquire Cabela's for $5.5 billion. In September 2017, Cabela's became part of Bass Pro Shops.

Retail stores

The largest Cabela's retail facility is in Hamburg, Pennsylvania, with more than 250000 sqft of floor space.

In 2007, Cabela's purchased family-owned S.I.R. Warehouse Sports Store in Winnipeg. In 2010, the Canadian Head Office and Distribution Centre moved across the city, leaving the original location as only a retail store. The company had intended to be a part of the 1400000 sqft Lac-Mirabel project near Montreal, which was to include 220000 sqft of retail space, and was planned to open in 2008. But instead, Bass Pro Shops became one of the mall anchors. In 2011 Cabela's opened a 70,000 sqft store in Edmonton, Alberta and a 50,000 sqft store opened in Saskatoon in 2012 another 70,000 sqft store in Calgary, Alberta opened in 2015.

In late 2011, Cabela's announced a new retail initiative called Cabela's Outpost Store was located in Union Gap, Washington, while the second was opened in Saginaw County, Michigan. The Outposts have seasonally rotating merchandise, online order kiosks, and in-store pickup.

Currently, there are 70 Cabela’s stores in the U.S. and 10 in Canada.

Acquisition by Bass Pro Shops
On July 5, 2017, the Federal Trade Commission approved the acquisition of Cabela's by Bass Pro Shops. The acquisition was complete on September 25, 2017. The two brands have a few things in common: they were founded around the same theme and both brand’s store locations were designed to deliver a “destination-like” shopping experience. Cabela’s and Bass Pro Shops locations have also doubled as wildlife exhibits and draw in many tourists. A Cabela’s in Michigan saw 6 million visitors a year and was the state’s largest tourist destination.

Sponsorships
Cabela's Legendary Adventures sponsors Richard Childress Racing driver Daniel Hemric in the Monster Energy NASCAR Cup Series in partnership with Bass Pro Shops. Cabela's also has a deck lid space on Martin Truex Jr.'s Bass Pro Shops car, and co-sponsors the No. 31 car driven by Ryan Newman.

In 2019, Cabela’s became a sponsor of Project Childsafe, a National Shooting Sports Foundation program that promotes safe firearms handling and responsible storage. Cabela’s has also been the official retailer of SHOT Show Industry Day at the Range.

Other sponsorships include Safari Club International, National Archery in the Schools Program, Project Childsafe, & the Catch a Dream Foundation.

Outreach
Cabela’s works with different organizations focused on military and Veteran support and conservation.

Military and Veteran Support
Cabela’s has supported Helping a Hero, Folds of Honor, All Secure Foundation, and Hiring a Hero.

Proud Veteran Outfitter Vest Program
In 2023, Bass Pro Shops and Cabela’s started the Proud Veteran Outfitter Vest Program and provided Veteran Outfitters (those who work at Bass Pro Shops and Cabela’s) with vests they can wear to work that include their name, military branch and rank, and the U.S. flag. The vests were presented during a ceremony that recognized each Veteran.

Legendary Salute Discount
The Legendary Salute Discount is Cabela’s and Bass Pro Shops’ discount program and offers a 10% discount on most things in the stores to active military, veterans, retirees, guard, reservists, law enforcement officers, firefighters and wildlife agents.

Bass Pro Shops and Cabela’s Outdoor Fund
The Outdoor Fund is a 501(c)(3) nonprofit. Customers at Bass Pro Shops and Cabela's can donate to it by choosing to round up their purchases to support different conservation partners and projects.

Partners and recipients of donations include:

 * Casting for Recovery
 * The Coastal Prairie Conservancy
 * Elks PTSD Veteran’s Fly Tying and Casting Program
 * Farmers and Hunters Feeding the Hungry
 * Forests Ontario
 * The George H.W. Bush Vamos A Pescar Education Fund
 * Jonathan Dickinson State Park.
 * Kentucky State Police - Trooper Island (free children's summer camp)
 * National Archery in the School Program (NASP)
 * The National Wild Turkey Federation
 * Outdoors Tomorrow Foundation

Video games
Cabela's has produced several series of video games for a variety of gaming platforms, including Cabela's Legendary Adventures, Cabela's Big Game Hunter series, Cabela's Dangerous Hunts series, and Cabela's Outdoor Adventures series.

Banking and finance
Founded in 2001, the World’s Foremost Bank is a subsidiary of Cabela’s. It is based in Sidney, Nebraska.

The subsidiary consisted of a single-branch bank with a deposit market share in the state of Nebraska of just under 1.2 percent, with $505 million in deposits as of 2011. At the end of 2012, the bank claimed to have $3,731,567,000 in assets. Sean Baker was appointed president of World's Foremost Bank and chief executive officer on January 1, 2013. Baker replaced Joseph M. Friebe, whose planned retirement was announced in June 2012.

2011 FDIC settlement
In 2011, Cabela’s World’s Foremost Bank agreed to pay $10.1 million in restitution and a $250,000 fine as part of a settlement agreement with the Federal Deposit Insurance Corporation (FDIC). The bank did not admit any wrongdoing in the agreement, but did agree to change certain practices.

2011 Royal Bank of Canada loan
The Bank entered into a $411.7 million commitment with the Royal Bank of Canada under a series of variable funding notes issued by Cabela's Credit Card Master Note Trust. The loan is for three years and accrues interest at a variable rate of commercial paper plus a spread.

2017 World’s Foremost Bank Sale & Capital One
As part of the merger with Bass Pro Shops, Cabela's sold the World's Foremost Bank aspect of their business, including over $1 billion in assets, to Synovus Financial Corp. and Capital One Financial Corp. After the deal was completed, Synovus planned to sell the credit card assets and related liabilities to Capital One Bank (USA) NA.

title: Cabela's