777 Shares 1183 views

MySQL JOIN: descrizione, un esempio di utilizzo di comando e raccomandazioni

Sviluppo di una banca dati di risorse Internet non differisce dal database standard sviluppati nel sistema di MS SQL Server. In genere, per questo tipo di risorsa usare il mio linguaggio SQL, anche se può essere applicata allo sviluppo di prodotti software standard per uso locale. Ma la domanda in questo articolo non andare su di esso.

Spesso quando si lavora con i database in ciascuna delle lingue del compito di rendere i dati di esempio per derivare in una varietà di rapporti, grafici e così via. Di norma, l'attuazione di questo tipo di problemi che dobbiamo utilizzare non uno ma diversi tavoli, la loro combinazione in una singola richiesta, complicando notevolmente la sua struttura. E 'necessario prendere in considerazione, come dovrebbero essere dati in uscita come tavolo sarà "recuperare", e ciò che il risultato sarà la più accettabile per il programmatore. Per risolvere questi problemi, utilizzare uno dei linguaggio stilistico MySQL serie – Registrati.

Il concetto delle parole si uniscono

sviluppo di database lingue, non importa che tipo di linguaggio, prendendo come base le parole standard dei dizionari inglesi (che è il motivo per cui la condizione che si sa l'inglese, si bude molto più facile lavorare con le tabelle). Per implementare la tabella delle connessioni nel campione preso la stessa parola – Registrati. Nel linguaggio del software di database utilizzato My SQL. Traduzione del servizio parola è esattamente lo stesso che nel linguaggio – "unione".

Interpretazione MySQL struttura – Join, ognuno dei quali uno sarà esattamente lo stesso. Se a decifrare lo scopo di costruzione, vale a dire la sagoma del suo lavoro, si ottengono i seguenti valori: il progetto permetterà di raccogliere i campi richiesti da diverse tabelle o query nidificate in un singolo campione.

Tipi di disegni per unire

Se il programmatore ha bisogno di raccogliere un campione da più tabelle, e sa quali sono i campi chiave in loro e che tipo di dati sono necessari per il report, è possibile utilizzare una delle strutture di base di associazione, al fine di ottenere il risultato desiderato. strutture di base (per unire le tabelle) sono quattro:

  1. join interno.
  2. Cross join.
  3. join sinistro.
  4. Proprio Partecipa.

A seconda del compito, ciascuno dei disegni standard darà risultati diversi, che riceveranno i rapporti su diversi parametri in un breve periodo di tempo.

La creazione di tabelle per un uso successivo

Prima di iniziare, per esempio, di prendere in considerazione i meccanismi di lavorare con costrutti di fusione dei dati dovrebbe preparare diverse tabelle, con la quale continueremo a lavorare. Ciò contribuirà a dimostrare i principi di tutti gli operatori, in aggiunta, in modo che i principianti impareranno tutte le basi tabelle di programmazione più facile.

La prima tabella descrive alcuni degli elementi con cui le persone sono costantemente incontrato durante la sua vita.

La seconda tabella descrive alcune delle proprietà degli oggetti della prima tabella per consentire ulteriore lavoro con loro.

In generale, le due tabelle saranno sufficienti a mostrare l'esempio del loro lavoro. Ora si può procedere alla considerazione pratica dei nostri disegni.

Utilizzando Inner Join

Se si utilizza la struttura di MySQL – Registrati Ineer opportuno prendere in considerazione alcune delle sue caratteristiche. Questo design consente di scegliere da entrambe le tabelle solo quei record che sono nel primo e nel secondo tavolo. Come funziona? La prima tabella abbiamo la chiave principale – ID, che indica il numero di serie del record nella tabella.

Quando si crea la seconda tabella, la stessa chiave viene utilizzata come un numero di sequenza, un esempio può essere visto nelle figure. Quando si sceglie un data Select determinerà il risultato registra solo i numeri di serie coincidono – di conseguenza, essi sono nella prima e nella seconda tabella.

Quando la costruzione è necessario capire esattamente che cosa è necessario per ottenere i dati. L'errore più comune, soprattutto per gli sviluppatori di database, è l'uso irrazionale e improprio del design Inner Join. A titolo di esempio, MySQL Inner Join, si può considerare uno script che ci tornerà alla precedentemente descritto e pieno di tavoli di oggetti informativi e le loro proprietà. Ma ci possono essere diversi modi per utilizzare il design. A questo proposito My SQL è un linguaggio molto flessibile. Quindi, è possibile vedere esempi di utilizzo di MySQL Inner Join.

Unire le tabelle senza specificare alcun parametro. In questo caso, si ottiene il risultato di un piano del genere:

Se indichiamo con la parola Soluzione: Utilizzando un servizio, è necessario considerare le chiavi principali di record nelle tabelle, il set di risultati cambierà radicalmente. In questo caso, si ottiene il campione, che restituirà solo le righe che hanno gli stessi chiavi master.

Possibilità di una terza forma di utilizzo, quando richiesto dalla parola «on» indica i campi che devono verificarsi tabelle di giunzione. In questo caso, il campione restituirà le seguenti informazioni:

Caratteristiche utilizzare Collega Sinistra

Se consideriamo un altro modo di combinare tabelle utilizzando la struttura MySQL – Join, si può notare una differenza nei dati, che vengono emessi. Tale meccanismo è Sinistra design.

Usando la struttura LEFT JOIN MySQL ha alcune caratteristiche e, come interno, richiede una chiara comprensione dei risultati da ottenere.

In questo caso, prima di selezionare tutti i record dalla prima tabella, e in seguito sono acclusi sulla seconda proprietà della tabella. In questo caso, se v'è un record, per esempio, il "sgabello" nella prima tabella e la seconda tabella sono immobili ad esso, i display operatore a sinistra di fronte l'ingresso al nulla, che racconta il programmatore che i segni su questo tema non è sentito .

Utilizzando questo progetto aiuterà a determinare quali campi o, per esempio, la merce in negozio non è impostato il prezzo, il periodo di garanzia , e così via.

Uso Esempio Sinistra

Per essere considerati per la progettazione della pratica dell'operatore LEFT JOIN MySQL utilizzare la tabella precedentemente descritto. Ad esempio, è necessario selezionare l'intero elenco dei prodotti che sono nel negozio, e verificare la presenza di alcuni di loro non sopportano caratteristiche o proprietà. In questo caso, il campione mostrerà tutti i prodotti, e per coloro che non hanno proprietà, porterà i null.

Dove impiego in edilizia Registrazione

Come parametro, l'associazione può includere non indica solo i campi per i quali si deve fare una tabella di connessione, ma possono includere l'operatore Quando le condizioni.

Ad esempio, si consideri uno script che dovrebbe essere restituito a noi solo i record che non hanno messo giù un segno. In questo caso, è necessario aggiungere il progetto Join termini dell'operatore e indicare che dovrebbe essere restituito come risultato.

Quando utilizzato in MySQL Join – dove dovrebbe essere chiaro che visualizza solo i record che includono la condizione di cui sopra, e il campione sarà quindi la seguente:

Queste richieste consentono di effettuare i dati specifici di esempio relativi alla condizione programmatore selezionato. Tali condizioni possono indicare diversi possibili durante l'aggiornamento dei parametri di selezione dei dati uniti con le tabelle.

Utilizzando Iscriviti per modificare i dati nelle tabelle

Progettare Partecipa, infatti, universale. Esso permette di fare non solo una varietà di campioni, ma anche collegare alle richieste da uno a più tabelle, di imporre condizioni supplementari in un campione. Il design può essere utilizzato anche per altre operazioni sui dati. Così, Join può essere utilizzato per modificare i dati nella tabella. O meglio, per chiarire le condizioni nella tabella, o nei casi in cui la necessità di aggiornare i dati in più tabelle alle stesse condizioni.

Ad esempio, si consideri il seguente problema. Dato tre tavoli in cui v'è una certa evidenza. È necessario effettuare la modifica dei dati di entrambe le tabelle utilizzando una singola query. Proprio per risolvere questi compiti possono essere utilizzati in comando Update Iscriviti design. Entra il tipo stesso di struttura dipende, allo stesso modo, come nel caso dei dati di esempio sul risultato di chi vuole ottenere un programmatore.

Si consideri un semplice esempio. È necessario aggiornare i dati su una singola richiesta alle stesse condizioni. Questo tipo di query è costruita in modo da ottimizzare il database. Perché scrivere query diverse per ciascuna delle tabelle, se si può spendere tutta la manipolazione dei dati richiesta di uno? ESEMPIO MySQL Aggiornamento Entra nel nostro caso sarebbe:

Costruire query complesse

Molto spesso quando si lavora con database di query necessarie per costruire non solo un'unione di diversi tavoli, ma anche con l'uso di sub-query. Tali problemi sono abbastanza difficili da capire per i database programmatore alle prime armi. La difficoltà è che dobbiamo pensare attraverso ogni passo, determinare quali dati da una tabella o query bisogno di ottenere e come in futuro dovrebbero essere di andare a lavorare.

Per una comprensione più specifica può essere considerato (in MySQL join) esempi di query complesse. Se sei nuovo e sta appena iniziando a lavorare con i database, tale formazione andrà a beneficio solo. L'incarnazione ideale sarà MySQL LEFT JOIN esempi.

Questa query di noi tornerà a 58 record del contratto di vendita, che è piena o c'è un saldo di cassa per la data selezionata. In questo caso, la data corrente. Anche nel campione aggiunto alla condizione che il contratto dovrebbe essere i caratteri di titolo – "123". Le informazioni sullo schermo (dati) saranno ordinati – ordinati secondo il numero del contratto.

L'esempio seguente mostra i dettagli di tutti i pagamenti, che indicherà il numero del contratto.

utilizzando sottoquery

Come accennato in precedenza, quando si lavora con i database può essere combinato non solo il tavolo, ma la tabella con la richiesta. Questo disegno è principalmente utilizzato per accelerare la query e la sua ottimizzazione.

Per esempio, se si desidera dalla tabella, che ha centinaia di campi e, diciamo, un migliaio di record, scegliere solo due campi, è necessario utilizzare una query che restituisce solo i campi obbligatori, e combinarlo con il campione di dati principale. A titolo di esempio MySQL registrazione Select può prendere in considerazione una richiesta di questo tipo:

Non è tutti i metodi di uso di disegni MySQL standard e unico standard. Come utilizzare la progettazione e registrazione in una qualsiasi delle sue forme, il programmatore decide, ma vale la pena ricordare e prendere in considerazione ciò che il risultato dovrebbe essere ottenuto dalla query.