I have three versions of the same select query ():  CREATE TABLE MainTable(ID INT) CREATE TABLE SubTable(ID INT, Type CHAR(2)) CREATE TABLE SubTableType(Type CHAR(2))  INSERT MainTable VALUES (1), (2) INSERT SubTable VALUES (1, 'AB'), (2, 'AB'), (3, 'CD') INSERT SubTableType VALUES ('AB')  SELECT  * FROM    MainTable P JOIN    SubTable L ON  P.ID = L.ID JOIN    SubTableType LT ON  L.Type = LT.Type  SELECT  * FROM    MainTable P JOIN    SubTable L JOIN    SubTableType LT ON  L.Type = LT.Type ON  P.ID = L.ID  SELECT  * FROM    MainTable P JOIN    SubTable L JOIN    SubTableType LT ON  P.ID = L.ID ON  L.Type = LT.Type   The first two select statements work and produce the same result. The third reports the error,      The multi-part identifier "P.ID" could not be bound.    appears to claim that the first two queries are semantically equivalent, though they may perform differently. My question is rather about the syntax. I've always written joins according to the first pattern, and I didn't even realize that the second pattern was permissible. Clearly it is, but then why isn't the third pattern also acceptable? The  doesn't seem to touch on this, so I'm trying to find documentation that spells out what is and isn't permissible.
The normal JOIN ... ON ... syntax is well known. But it is also possible to position the ON clause separately from the JOIN that it corresponds to. This is something that is rarely seen in practice, not found in tutorials and I have not found any web resource that even mentions that this is possible.  Here is a script to play around with:  SELECT * INTO #widgets1 FROM (VALUES (1), (2), (3)) x(WidgetID)   SELECT * INTO #widgets2 FROM (VALUES (1, 'SomeValue1'), (2, 'SomeValue2'), (3, 'SomeValue3')) x(WidgetID, SomeValue)  SELECT * INTO #widgetProperties FROM (VALUES     (1, 'a'), (1, 'b'),     (2, 'a'), (2, 'b')) x(WidgetID, PropertyName)   --q1 SELECT w1.WidgetID, w2.SomeValue, wp.PropertyName FROM #widgets1 w1 LEFT JOIN #widgets2 w2 ON w2.WidgetID = w1.WidgetID LEFT JOIN #widgetProperties wp ON w2.WidgetID = wp.WidgetID AND wp.PropertyName = 'b' ORDER BY w1.WidgetID   --q2 SELECT w1.WidgetID, w2.SomeValue, wp.PropertyName FROM #widgets1 w1 LEFT JOIN #widgets2 w2 --no ON clause here JOIN #widgetProperties wp  ON w2.WidgetID = wp.WidgetID AND wp.PropertyName = 'b'  ON w2.WidgetID = w1.WidgetID ORDER BY w1.WidgetID   --q3 SELECT w1.WidgetID, w2.SomeValue, wp.PropertyName FROM #widgets1 w1 LEFT JOIN (     #widgets2 w2 --no SELECT or FROM here     JOIN #widgetProperties wp     ON w2.WidgetID = wp.WidgetID AND wp.PropertyName = 'b') ON w2.WidgetID = w1.WidgetID ORDER BY w1.WidgetID   q1 looks normal. q2 and q3 have these unusual positionings of the ON clause.  This script does not necessarily make much sense. It was hard for me to contrive a meaningful scenario.  So what do these unusual syntax patterns mean? How is this defined? I noticed that not all positions and orderings for the two ON clauses are allowed. What are the rules governing this?  Also is it ever a good idea to write queries like this?
An inequality involving 4 real or complex numbers How to call the method correctly in Preference.OnPreferenceChangeListener() Just noticed a minor css issue on this question:    The related questions on the right hand side have some overlapping text in Chrome:        (This only applies to this very site, Meta Stack Exchange) Did Anakin and Obi-Wan use the Force to protect themselves from the heat on Mustafar? While duelling that close to lava, I would suspect that they would get dangerously hot and dehydrated, and possibly burned. Did they use the Force to protect themselves in some way, for example lower their body temperatures and cool the air around them while duelling? what exactly is mathematical rigor? I am a programmer moving up to computer science and even in my past life as a mechanical engineer I used sufficient maths to get by but I have always wondered what exactly is this thing called rigor.  Please make me understand it. Why are my Elytra Wings are not activating? Why do my Elytra Wings only work intermittently?  I do not forget to jump, but when I switch to Survival and then back to Creative, they won't activate whatsoever. Any help is much appreciated. Thanks. Proving the cross product matrix tranformation identity with an alternative solution I'm solving a problem from the book, Mathematics for 3D Game Programming and Computer Graphics, Third Edition, by Eric Lengley. The problem goes:  Let $N$ be the normal vector to a surface at a point $P$, and let $S$ and $T$ be tangent vectors at the point $P$ such that $S \times T = N$. Given an invertible 3 $\times$ 3 matrix $M$, show that $(MS) \times (MT) = (\text{det}M(M^{-1})^{T}(S \times T)$, supporting the fact that normals are correctly transformed by the inverse transpose of the matrix $M$.  The author provided a hint stating we can represent $(MS) \times (MT)$ as $$ (MS) \times (MT) = \begin{bmatrix} 0 &amp; -(MS)_{z} &amp; (MS)_{y} \\  (MS)_{z} &amp; 0 &amp; -(MS)_{x} \\  -(MS)_{y} &amp; (MS)_{x} &amp; 0  \end{bmatrix} MT $$ We then find a matrix $G$ such that $$ GU = \begin{bmatrix} 0 &amp; -(MS)_{z} &amp; (MS)_{y} \\  (MS)_{z} &amp; 0 &amp; -(MS)_{x} \\  -(MS)_{y} &amp; (MS)_{x} &amp; 0  \end{bmatrix} M $$ where $$ U = \begin{bmatrix} 0 &amp; -S_{z} &amp; S_{y} \\  S_{z} &amp; 0 &amp; -S_{x} \\  -S_{y} &amp; S_{x} &amp; 0  \end{bmatrix} $$ and show that $G = (\text{det}M)(M^{-1})^{T}$ to solve the problem. I am aware that there is an  to this problem, but I would like to solve it through the hints provided. Unfortunately, I am only able to go as far doing: $$ G = \begin{bmatrix} 0 &amp; -(MS)_{z} &amp; (MS)_{y} \\  (MS)_{z} &amp; 0 &amp; -(MS)_{x} \\  -(MS)_{y} &amp; (MS)_{x} &amp; 0  \end{bmatrix} M U^{-1} $$ At this point, I do not know how to proceed with showing that $G = (\text{det}M)(M^{-1})^{T}$. How would you proceed? I'd like to ask for hints on solving the problem. Apply a string replacement on the citation as returned by \cite I have biblatex with options  \usepackage[backend=bibtex, style=authoryear]{biblatex}   The citations made with \cite look like this: Smith, 2019 or Smith and Baker, 2019 and so on. I would like to define a command that automatically replaces the occurrence of my name with my initials. Namely I need  \cite{SmithsPaper}  % --&gt; Smith, 2019 \cite{MyPaper}      % --&gt; Manny, 2019 %%% \newcite{SmithsPaper}  % --&gt; Smith, 2019 \newcite{MyPaper}      % --&gt; MC, 2019   I have tried with the package xstring to do something like  \newcommand{\newcite}[1]{%   \begingroup   \edef\@temp{\cite{#1}}%   \StrSubstitute{\@temp}{Manny}{MC}   \endgroup }   The problem is that I can't figure out how to tell LaTeX to expand \cite{#1}. As a result the citation comes out without the replacement. If I change \cite{#1} by simply #1 and I call \newcite{bla Manny bla} it gives bla MC bla as expected.  It shouldn't be relevant but I'm using this within the beamer documentclass. Intermediate fields between $\mathbb{Z}_2 (\sqrt{x},\sqrt{y})$ and $\mathbb{Z}_2 (x,y)$ Is it possible to get the data off of the hard drive of a PlayStation 3 that has crashed? I have already voided the warranty so I am not worried about that and I have access to quite a few tools.   I have a new PlayStation and a few saves that were not backed up. I am not worried about them but if it is possible I would love to get it moved over.   The old PlayStation will not turn on at all and I think I am going to have to pull the drive. My main concern is if I am able to transfer the files without running into any issues. I have heard that some of the stuff is specific to each PlayStation, is that true? Frequency of the sound when blowing in a bottle I'm sure you have tried sometime to make a sound by blowing in an empty bottle. Of course, the tone/frequency of the sound modifies if the bottle changes its shape, volume, etc.   I am interested in understanding how the tone/frequency of this sound can be (approximately) calculated from the shape of the bottle. Is there some formula?  If you have any references about this please post them in your answers.  Being a mathematician I keep hearing that the principal tone is given by the first eigenvalue of the Laplace operator, and I'd like to understand the physical explanation. Why is the word 'number' abbreviated to 'No.' in UK English and '#' in American English? How do you join or create a server in multiplayer? We've tried this a few times. First time we used an old ceramic container and it started sheding on the inside and ruined it. Next time we used a new metal garbage can with one of those super sized 10 gallon zip lock bags as a liner. It went rank very quickly. This could have been due to our packing though. Before we get into this again, what is you recommendation for a good container? I hate the thought of plastics but it seems it might just be the best choice as long as it's made for food storage. I understand that unlocking the bootloader will wipe my Android phone, but have been looking around for why.  Seems to be by design, but what is the reasoning for that design?  Is it some security concern, some obscure technical reason, or just for lulz?  I'm looking for something solid to chew on here, something more than because "that's how it is". I am creating a type of adventure map. Once you enter the map, you step on some pressure plates that are supposed to seamlessly close the wall behind you. For some reason this command does not work when in a command block or just in text. Here is the command:  /fill -17 4 -109 -18 5 109 minecraft:light_gray_concrete   The output it gives me is "That position is not loaded". I am on a singleplayer superflat world in 1.14.3. Any help would be very appreciated! Today I found something strange on my newly installed Windows 7 OS - my "users" folder C:\Users was shared and "Everyone" had full access... I disabled that and now it seems fine, however I'm a bit scared actually, I'd like to know what caused that and if my system is compromised. Examples of PCA where PCs with low variance are "useful" Among any three consecutive positive integers one is a multiple of 3 Can't Use /Summon Command Recently I've been messing around with making a few minigames, and have used a few plugins to help make it easier to create and run them. However, a newer one I'm making requires me to use the /summon command in order to spawn zombies. However, no matter what I put in, I can't spawn hostile mobs. All other entities still spawn perfectly fine. Strangely, the /spawnmob command which comes with Essentials can summon hostile mobs fine. I would rather use /summon since it's more customizable though. Here's a list of plugins I have installed.   Essentials EssentialsChat HolographicDisplays PermissionsEx setspawn [A plugin I have made, just a simple timer] Vault VoxelSniper WorldEdit WorldGuard   Please let me know if you have any ideas on what I'm doing incorrectly or isn't functioning the way it should.