rspec/rules/S5141/tsql/rule.adoc

40 lines
931 B
Plaintext

== Why is this an issue?
include::../description.adoc[]
=== Noncompliant code example
[source,sql]
----
select c.id, c.name, o.id, o.item_id, o.item_quantity
from ORDERS o INNER JOIN CUSTOMERS c // Noncompliant; no JOIN condition at all
select f.name, d.title, dlines.*
from FOLDER f, DOCUMENTS d, DOC_LINES dlines // Noncompliant; missing at least one condition related to DOC_LINES in the WHERE clause
WHERE f.id = d.folder_id
----
=== Compliant solution
[source,sql]
----
select c.id, c.name, o.id, o.item_id, o.item_quantity
from ORDERS o INNER JOIN CUSTOMERS c
WHERE o.customer_id = c.id // Compliant
select f.name, d.title, dlines.*
from FOLDER f, DOCUMENTS d, DOC_LINES dlines
WHERE f.id = d.folder_id
AND d.id = dlines.document_id // Compliant
----
ifdef::env-github,rspecator-view[]
'''
== Implementation Specification
(visible only on this page)
include::../message.adoc[]
endif::env-github,rspecator-view[]