SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจ•เฉ‹เจฐเจธ เจฆเฉ€ เจธเจผเฉเจฐเฉ‚เจ†เจค เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ "MS SQL เจธเจฐเจตเจฐ เจกเจฟเจตเฉˆเจฒเจชเจฐ" เจ…เจธเฉ€เจ‚ เจคเฉเจนเจพเจกเฉ‡ เจฒเจˆ เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจ‰เจชเจฏเฉ‹เจ—เฉ€ เจ…เจจเฉเจตเจพเจฆ เจคเจฟเจ†เจฐ เจ•เฉ€เจคเจพ เจนเฉˆเฅค

เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจชเฉ‡เจธเจผเฉ‡เจตเจฐเจพเจ‚ เจฒเจˆ เจ‡เฉฑเจ• เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจคเจ•เจจเจพเจฒเฉ‹เจœเฉ€ เจนเฉˆเฅค เจฎเฉˆเจ‚ เจ‡เจธ เจ–เฉ‡เจคเจฐ เจตเจฟเฉฑเจš เจจเจตเฉ€เจจเจคเจพเจตเจพเจ‚ เจ…เจคเฉ‡ เจจเจตเฉ€เจ†เจ‚ เจคเจ•เจจเจพเจฒเฉ‹เจœเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจœเจพเจฐเฉ€ เจฐเฉฑเจ–เจฃ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เจฐเจฆเจพ เจนเจพเจ‚ เจ…เจคเฉ‡, เจฐเจฟเจฒเฉ‡เจธเจผเจจเจฒ เจ…เจคเฉ‡ NoSQL เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจฎเฉˆเจ‚ เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจญเฉ‚เจฎเจฟเจ•เจพ เจจเฉ‚เฉฐ เจตเจงเจฆเฉ€ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจฌเจฃเจฆเฉ‡ เจฆเฉ‡เจ–เจฆเจพ เจนเจพเจ‚เฅค เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจฒเฉœเฉ€เจตเจพเจฐ เจกเฉ‡เจŸเจพ เจฆเฉ‡ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚, เจจเจพ เจธเจฟเจฐเจซ เจฐเจตเจพเจ‡เจคเฉ€ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฌเฉ‡เจ…เจธเจฐ เจนเฉเฉฐเจฆเฉ‡ เจนเจจ, เจฌเจฒเจ•เจฟ NoSQL เจตเฉ€. เจ…เจ•เจธเจฐ, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจ•เฉเจจเฉˆเจ•เจธเจผเจจ เจชเฉฑเจงเจฐเจพเจ‚ เจฆเฉ€ เจ—เจฟเจฃเจคเฉ€ เจ…เจคเฉ‡ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเจพ เจ†เจ•เจพเจฐ เจตเจงเจฆเจพ เจนเฉˆ, เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจ˜เจŸเจฆเจพ เจนเฉˆเฅค เจ…เจคเฉ‡ เจœเจฟเจตเฉ‡เจ‚-เจœเจฟเจตเฉ‡เจ‚ เจฐเจฟเจธเจผเจคเฉ‡ เจนเฉ‹เจฐ เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจนเฉเฉฐเจฆเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจจ, JOIN เจฆเฉ€ เจ—เจฟเจฃเจคเฉ€ เจตเฉ€ เจตเจงเจฆเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค

เจฌเฉ‡เจธเจผเฉฑเจ•, เจฐเจฟเจฒเฉ‡เจธเจผเจจเจฒ เจฎเจพเจกเจฒ เจตเจฟเฉฑเจš เจฆเจฐเจœเจพเจฌเฉฐเจฆเฉ€ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฒเจˆ เจนเฉฑเจฒ เจนเจจ (เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจ†เจตเจฐเจคเฉ€ CTEs เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเจพ), เจชเจฐ เจ‡เจน เจ…เจœเฉ‡ เจตเฉ€ เจนเฉฑเจฒ เจนเจจเฅค เจ‰เจธเฉ‡ เจธเจฎเฉ‡เจ‚, SQL เจธเจฐเจตเจฐ เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจ•เจพเจฐเจœเจ•เฉเจธเจผเจฒเจคเจพ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฒเฉœเฉ€ เจฆเฉ‡ เจ•เจˆ เจชเฉฑเจงเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจ†เจธเจพเจจเฉ€ เจจเจพเจฒ เจธเฉฐเจญเจพเจฒเจฃ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเฉ€ เจนเฉˆเฅค เจกเจพเจŸเจพ เจฎเจพเจกเจฒ เจ…เจคเฉ‡ เจธเจตเจพเจฒ เจฆเฉ‹เจตเฉ‡เจ‚ เจธเจฐเจฒ เจฌเจฃเจพเจ เจ—เจ เจนเจจ, เจ…เจคเฉ‡ เจ‡เจธเจฒเจˆ เจ‰เจนเจจเจพเจ‚ เจฆเฉ€ เจ•เฉเจธเจผเจฒเจคเจพ เจตเจงเจฆเฉ€ เจนเฉˆเฅค เจ•เฉ‹เจก เจฆเฉ€ เจฎเจพเจคเจฐเจพ เจ•เจพเจซเจผเฉ€ เจ˜เฉฑเจŸ เจ—เจˆ เจนเฉˆเฅค

เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจชเฉเจฐเจฃเจพเจฒเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจฆเจฐเจธเจพเจ‰เจฃ เจฒเจˆ เจ‡เฉฑเจ• เจญเจพเจตเจชเฉ‚เจฐเจค เจญเจพเจธเจผเจพ เจนเฉˆเฅค เจ‡เจน เจคเจ•เจจเจพเจฒเฉ‹เจœเฉ€ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจ†เจˆเจŸเฉ€ เจ‰เจฆเจฏเฉ‹เจ— เจตเจฟเฉฑเจš เจธเฉ‹เจธเจผเจฒ เจจเฉˆเจŸเจตเจฐเจ•เจธ, เจเจ‚เจŸเฉ€-เจซเจฐเฉŒเจก เจชเฉเจฐเจฃเจพเจฒเฉ€เจ†เจ‚, เจ†เจˆเจŸเฉ€ เจจเฉˆเจŸเจตเจฐเจ• เจตเจฟเจธเจผเจฒเฉ‡เจธเจผเจฃ, เจธเจฎเจพเจœเจฟเจ• เจธเจฟเจซเจผเจพเจฐเจฟเจธเจผเจพเจ‚, เจ‰เจคเจชเจพเจฆ เจ…เจคเฉ‡ เจธเจฎเฉฑเจ—เจฐเฉ€ เจธเจฟเจซเจผเจพเจฐเจธเจผเจพเจ‚ เจตเจฐเจ—เฉ‡ เจ–เฉ‡เจคเจฐเจพเจ‚ เจตเจฟเฉฑเจš เจตเจฟเจ†เจชเจ• เจคเฉŒเจฐ 'เจคเฉ‡ เจตเจฐเจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค

SQL เจธเจฐเจตเจฐ เจตเจฟเฉฑเจš เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจ•เจพเจฐเจœเจ•เฉเจธเจผเจฒเจคเจพ เจ‰เจนเจจเจพเจ‚ เจฆเฉเจฐเจฟเจธเจผเจพเจ‚ เจฒเจˆ เจขเฉเจ•เจตเฉ€เจ‚ เจนเฉˆ เจœเจฟเฉฑเจฅเฉ‡ เจกเฉ‡เจŸเจพ เจฌเจนเฉเจค เจœเจผเจฟเจ†เจฆเจพ เจ†เจชเจธ เจตเจฟเฉฑเจš เจœเฉเฉœเจฟเจ† เจนเฉ‹เจ‡เจ† เจนเฉˆ เจ…เจคเฉ‡ เจšเฉฐเจ—เฉ€ เจคเจฐเฉเจนเจพเจ‚ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจฐเจฟเจธเจผเจคเฉ‡ เจนเจจเฅค

เจ—เฉเจฐเจพเจซเจผ เจกเจพเจŸเจพ เจฎเจพเจกเจฒ

เจ‡เฉฑเจ• เจ—เฉเจฐเจพเจซเจผ เจธเจฟเจฐเจฒเฉ‡เจ–เจพเจ‚ (เจจเฉ‹เจกเจพเจ‚) เจ…เจคเฉ‡ เจ•เจฟเจจเจพเจฐเจฟเจ†เจ‚ (เจฐเจฟเจธเจผเจคเฉ‡, เจ•เจฟเจจเจพเจฐเฉ‡) เจฆเจพ เจ‡เฉฑเจ• เจธเจฎเฉ‚เจน เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค เจธเจฟเจฐเจฒเฉ‡เจ– เจ‡เจ•เจพเจˆเจ†เจ‚ เจจเฉ‚เฉฐ เจฆเจฐเจธเจพเจ‰เจ‚เจฆเฉ‡ เจนเจจ, เจ…เจคเฉ‡ เจ•เจฟเจจเจพเจฐเฉ‡ เจ‰เจนเจจเจพเจ‚ เจธเจฌเฉฐเจงเจพเจ‚ เจจเฉ‚เฉฐ เจฆเจฐเจธเจพเจ‰เจ‚เจฆเฉ‡ เจนเจจ เจœเจฟเจจเฉเจนเจพเจ‚ เจฆเฉ€เจ†เจ‚ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚ เจตเจฟเฉฑเจš เจœเจพเจฃเจ•เจพเจฐเฉ€ เจนเฉ‹ เจธเจ•เจฆเฉ€ เจนเฉˆเฅค

เจ—เฉเจฐเจพเจซ เจฅเจฟเจŠเจฐเฉ€ เจตเจฟเฉฑเจš เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เฉ€เจคเฉ‡ เจ…เจจเฉเจธเจพเจฐ เจ‡เฉฑเจ• เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฎเจพเจกเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจ—เฉเจฐเจพเจซ เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจชเฉ‡เจธเจผ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจกเจพเจŸเจพ เจฌเจฃเจคเจฐ เจธเจฟเจฐเจฒเฉ‡เจ– เจ…เจคเฉ‡ เจ•เจฟเจจเจพเจฐเฉ‡ เจนเจจเฅค เจ—เฉเจฃ เจ•เฉ‹เจจเจพเจตเจพเจ‚ เจ…เจคเฉ‡ เจ•เจฟเจจเจพเจฐเจฟเจ†เจ‚ เจฆเฉ€เจ†เจ‚ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚ เจนเจจเฅค เจ‡เฉฑเจ• เจ•เฉเจจเฉˆเจ•เจธเจผเจจ เจธเจฟเจฐเจฒเฉ‡เจ–เจพเจ‚ เจฆเจพ เจ‡เฉฑเจ• เจ•เฉเจจเฉˆเจ•เจธเจผเจจ เจนเฉˆเฅค

เจฆเฉ‚เจœเฉ‡ เจกเฉ‡เจŸเจพ เจฎเจพเจกเจฒเจพเจ‚ เจฆเฉ‡ เจ‰เจฒเจŸ, เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจ‡เจ•เจพเจˆเจ†เจ‚ เจตเจฟเจšเจ•เจพเจฐ เจธเจฌเฉฐเจงเจพเจ‚ เจจเฉ‚เฉฐ เจคเจฐเจœเฉ€เจน เจฆเจฟเฉฐเจฆเฉ‡ เจนเจจเฅค เจ‡เจธ เจฒเจˆ, เจตเจฟเจฆเฉ‡เจธเจผเฉ€ เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจœเจพเจ‚ เจ•เจฟเจธเฉ‡ เจนเฉ‹เจฐ เจธเจพเจงเจจ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจธเจฌเฉฐเจงเจพเจ‚ เจฆเฉ€ เจ—เจฃเจจเจพ เจ•เจฐเจจ เจฆเฉ€ เจ•เฉ‹เจˆ เจฒเฉ‹เฉœ เจจเจนเฉ€เจ‚ เจนเฉˆ. เจธเจฟเจฐเจซเจผ เจธเจฟเจฐเจฒเฉ‡เจ– เจ…เจคเฉ‡ เจ•เจฟเจจเจพเจฐเฉ‡ เจเจฌเจธเจŸเจฐเฉˆเจ•เจธเจผเจจเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจกเฉ‡เจŸเจพ เจฎเจพเจกเจฒ เจฌเจฃเจพเจ‰เจฃเจพ เจธเฉฐเจญเจต เจนเฉˆเฅค

เจ†เจงเฉเจจเจฟเจ• เจธเฉฐเจธเจพเจฐ เจตเจฟเฉฑเจš, เจฎเจพเจกเจฒเจฟเฉฐเจ— เจธเจฌเฉฐเจงเจพเจ‚ เจฒเจˆ เจตเจงเจฆเฉ€ เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจคเจ•เจจเฉ€เจ•เจพเจ‚ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค เจฐเจฟเจธเจผเจคเจฟเจ†เจ‚ เจจเฉ‚เฉฐ เจฎเจพเจกเจฒ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ, SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจธเจฎเจฐเฉฑเจฅเจพเจตเจพเจ‚ เจฆเฉ€ เจชเฉ‡เจธเจผเจ•เจธเจผ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ—เฉเจฐเจพเจซ เจฆเฉ‡ เจธเจฟเจฐเจฟเจ†เจ‚ เจ…เจคเฉ‡ เจ•เจฟเจจเจพเจฐเจฟเจ†เจ‚ เจจเฉ‚เฉฐ เจจเจตเฉ€เจ‚ เจ•เจฟเจธเจฎ เจฆเฉ€เจ†เจ‚ เจŸเฉ‡เจฌเจฒเจพเจ‚ เจตเจœเฉ‹เจ‚ เจฆเจฐเจธเจพเจ‡เจ† เจ—เจฟเจ† เจนเฉˆ: NODE เจ…เจคเฉ‡ EDGEเฅค เจ—เฉเจฐเจพเจซเจผ เจธเจตเจพเจฒ เจ‡เฉฑเจ• เจจเจตเฉ‡เจ‚ T-SQL เจซเฉฐเจ•เจธเจผเจจ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจจ เจœเจฟเจธเจจเฉ‚เฉฐ MATCH() เจ•เจฟเจนเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ‡เจน เจ•เจพเจฐเจœเจธเจผเฉ€เจฒเจคเจพ SQL เจธเจฐเจตเจฐ 2017 เจตเจฟเฉฑเจš เจฌเจฃเจพเจˆ เจ—เจˆ เจนเฉˆ, เจ‡เจธ เจจเฉ‚เฉฐ เจฌเจฟเจจเจพเจ‚ เจ•เจฟเจธเฉ‡ เจชเจฐเจฟเจตเจฐเจคเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจฆเฉ‡ เจคเฉเจนเจพเจกเฉ‡ เจฎเฉŒเจœเฉ‚เจฆเจพ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจตเจฟเฉฑเจš เจตเจฐเจคเจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค

เจ—เฉเจฐเจพเจซ เจฎเจพเจกเจฒ เจฆเฉ‡ เจฒเจพเจญ

เจ…เฉฑเจœ, เจ•เจพเจฐเฉ‹เจฌเจพเจฐ เจ…เจคเฉ‡ เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจ‰เฉฑเจš เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจ…เจคเฉ‡ เจญเจฐเฉ‹เจธเฉ‡เจฏเฉ‹เจ—เจคเจพ เจฆเฉ€ เจ‰เจฎเฉ€เจฆ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, เจตเฉฑเจง เจคเฉ‹เจ‚ เจตเฉฑเจง เจกเฉ‡เจŸเจพ เจจเฉ‚เฉฐ เจธเฉฐเจญเจพเจฒเจฃ เจตเจพเจฒเฉ€เจ†เจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจฆเฉ€ เจฎเฉฐเจ— เจ•เจฐเจฆเฉ‡ เจนเจจเฅค เจ‡เฉฑเจ• เจ—เฉเจฐเจพเจซ เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจกเฉ‡เจŸเจพ เจจเฉ‚เฉฐ เจฆเจฐเจธเจพเจ‰เจฃเจพ เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจธเจฌเฉฐเจงเจพเจ‚ เจจเฉ‚เฉฐ เจธเฉฐเจญเจพเจฒเจฃ เจฆเฉ‡ เจ‡เฉฑเจ• เจธเฉเจตเจฟเจงเจพเจœเจจเจ• เจธเจพเจงเจจ เจฆเฉ€ เจชเฉ‡เจธเจผเจ•เจธเจผ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‡เจน เจชเจนเฉเฉฐเจš เจฌเจนเฉเจค เจธเจพเจฐเฉ€เจ†เจ‚ เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจฆเฉ€ เจนเฉˆ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจฆเจฟเฉฑเจคเฉ‡ เจธเฉฐเจฆเจฐเจญ เจตเจฟเฉฑเจš เจจเจคเฉ€เจœเฉ‡ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจตเจฟเฉฑเจš เจฎเจฆเจฆ เจ•เจฐเจฆเฉ€ เจนเฉˆเฅค

เจ…เจœเจฟเจนเจพ เจฒเจ—เจฆเจพ เจนเฉˆ เจ•เจฟ เจญเจตเจฟเฉฑเจ– เจตเจฟเฉฑเจš เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจจเจพเจฒ เจฌเจนเฉเจค เจธเจพเจฐเฉ€เจ†เจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจจเฉ‚เฉฐ เจฒเจพเจญ เจนเฉ‹เจตเฉ‡เจ—เจพเฅค

เจกเฉ‡เจŸเจพ เจฎเจพเจกเจฒเจฟเฉฐเจ—: เจฐเจฟเจฒเฉ‡เจธเจผเจจเจฒ เจคเฉ‹เจ‚ เจ—เฉเจฐเจพเจซ เจฎเจพเจกเจฒ เจคเฉฑเจ•

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ
เจ‰เจฆเจพเจนเจฐเจจ:

เจ†เจ‰ เจ•เจฐเจฎเจšเจพเจฐเฉ€เจ†เจ‚ เจฆเฉ€ เจฒเฉœเฉ€ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ• เจธเฉฐเจ—เจ เจจเจพเจคเจฎเจ• เจขเจพเจ‚เจšเฉ‡ เจฆเฉ€ เจ‡เฉฑเจ• เจ‰เจฆเจพเจนเจฐเจจ เจตเฉ‡เจ–เฉ€เจ: เจ‡เฉฑเจ• เจ•เจฐเจฎเจšเจพเจฐเฉ€ เจ‡เฉฑเจ• เจฎเฉˆเจจเฉ‡เจœเจฐ เจจเฉ‚เฉฐ เจฐเจฟเจชเฉ‹เจฐเจŸ เจ•เจฐเจฆเจพ เจนเฉˆ, เจ‡เฉฑเจ• เจฎเฉˆเจจเฉ‡เจœเจฐ เจ‡เฉฑเจ• เจธเฉ€เจจเฉ€เจ…เจฐ เจฎเฉˆเจจเฉ‡เจœเจฐ เจจเฉ‚เฉฐ เจฐเจฟเจชเฉ‹เจฐเจŸ เจ•เจฐเจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจนเฉ‹เจฐ. เจ–เจพเจธ เจ•เฉฐเจชเจจเฉ€ 'เจคเฉ‡ เจจเจฟเจฐเจญเจฐ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, เจ‡เจธ เจฒเฉœเฉ€ เจตเจฟเฉฑเจš เจ•เจˆ เจชเฉฑเจงเจฐ เจนเฉ‹ เจธเจ•เจฆเฉ‡ เจนเจจเฅค เจชเจฐ เจœเจฟเจตเฉ‡เจ‚-เจœเจฟเจตเฉ‡เจ‚ เจชเฉฑเจงเจฐเจพเจ‚ เจฆเฉ€ เจ—เจฟเจฃเจคเฉ€ เจตเจงเจฆเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจฐเจฟเจฒเฉ‡เจธเจผเจจเจฒ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจตเจฟเฉฑเจš เจฐเจฟเจธเจผเจคเจฟเจ†เจ‚ เจฆเฉ€ เจ—เจฃเจจเจพ เจ•เจฐเจจเจพ เจตเจงเฉ‡เจฐเฉ‡ เจ”เจ–เจพ เจนเฉเฉฐเจฆเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจ•เจฐเจฎเจšเจพเจฐเฉ€เจ†เจ‚ เจฆเฉ€ เจฒเฉœเฉ€, เจฎเจพเจฐเจ•เฉ€เจŸเจฟเฉฐเจ— เจตเจฟเฉฑเจš เจฆเจฐเจœเจพเจฌเฉฐเจฆเฉ€ เจœเจพเจ‚ เจธเฉ‹เจธเจผเจฒ เจจเฉˆเจŸเจตเจฐเจ•เจธ เจตเจฟเฉฑเจš เจ•เจจเฉˆเจ•เจธเจผเจจเจพเจ‚ เจฆเฉ€ เจ•เจฒเจชเจจเจพ เจ•เจฐเจจเจพ เจ•เจพเจซเจผเฉ€ เจฎเฉเจธเจผเจ•เจฒ เจนเฉˆเฅค เจ†เจ“ เจฆเฉ‡เจ–เฉ€เจ เจ•เจฟ SQL เจ—เฉเจฐเจพเจซเจผ เจฒเฉœเฉ€ เจฆเฉ‡ เจตเฉฑเจ–-เจตเฉฑเจ– เจชเฉฑเจงเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจธเฉฐเจญเจพเจฒเจฃ เจฆเฉ€ เจธเจฎเฉฑเจธเจฟเจ† เจจเฉ‚เฉฐ เจ•เจฟเจตเฉ‡เจ‚ เจนเฉฑเจฒ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆเฅค

เจ‡เจธ เจ‰เจฆเจพเจนเจฐเจฃ เจฒเจˆ เจ…เจธเฉ€เจ‚ เจ‡เฉฑเจ• เจธเจงเจพเจฐเจจ เจกเฉ‡เจŸเจพ เจฎเจพเจกเจฒ เจฌเจฃเจพเจตเจพเจ‚เจ—เฉ‡เฅค เจ†เจ“ เจ•เจฐเจฎเจšเจพเจฐเฉ€เจ†เจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจธเจพเจฐเจฃเฉ€ เจฌเจฃเจพเจˆเจ EMP ID เจฆเฉ‡ เจจเจพเจฒ EMPNO เจ…เจคเฉ‡ เจ•เจพเจฒเจฎ เจเจฎ.เจœเฉ€.เจ†เจฐ., เจ•เจฐเจฎเจšเจพเจฐเฉ€ เจฆเฉ‡ เจธเฉเจชเจฐเจตเจพเจˆเจœเจผเจฐ (เจชเฉเจฐเจฌเฉฐเจงเจ•) เจฆเฉ‡ เจชเจ›เจพเจฃเจ•เจฐเจคเจพ เจจเฉ‚เฉฐ เจฆเจฐเจธเจพเจ‰เจ‚เจฆเจพ เจนเฉˆเฅค เจฆเจฐเจœเจพเจฌเฉฐเจฆเฉ€ เจฌเจพเจฐเฉ‡ เจธเจพเจฐเฉ€ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจ‡เจธ เจธเจพเจฐเจฃเฉ€ เจตเจฟเฉฑเจš เจธเจŸเฉ‹เจฐ เจ•เฉ€เจคเฉ€ เจ—เจˆ เจนเฉˆ เจ…เจคเฉ‡ เจ•เจพเจฒเจฎเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ› เจ•เฉ€เจคเฉ€ เจœเจพ เจธเจ•เจฆเฉ€ เจนเฉˆ EMPNO ะธ เจเจฎ.เจœเฉ€.เจ†เจฐ..

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ
เจจเจฟเจฎเจจเจฒเจฟเจ–เจค เจšเจฟเฉฑเจคเจฐ เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจœเจพเจฃเฉ‡-เจชเจ›เจพเจฃเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจ†เจฒเฉเจนเจฃเฉ‡ เจฆเฉ‡ เจšเจพเจฐ เจชเฉฑเจงเจฐเจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ•เฉ‹ เจธเฉฐเจ—เจ เจจเจพเจคเจฎเจ• เจขเจพเจ‚เจšเฉ‡ เจฆเจพ เจฎเจพเจกเจฒ เจฆเจฟเจ–เจพเจ‰เจ‚เจฆเจพ เจนเฉˆเฅค เจ•เจฐเจฎเจšเจพเจฐเฉ€ เจ‡เฉฑเจ• เจธเจพเจฐเจฃเฉ€ เจคเฉ‹เจ‚ เจ‡เฉฑเจ• เจ—เฉเจฐเจพเจซ เจฆเฉ‡ เจธเจฟเจฐเจฒเฉ‡เจ– เจนเฉเฉฐเจฆเฉ‡ เจนเจจ EMP. เจ‡เจ•เจพเจˆ "เจ•เจฐเจฎเจšเจพเจฐเฉ€" เจ•เฉเจจเฉˆเจ•เจธเจผเจจ "เจธเจฌเจฎเจฟเจŸ" (เจฐเจฟเจชเฉ‹เจฐเจŸเจธเจŸเฉ‚) เจฆเฉเจ†เจฐเจพ เจ†เจชเจฃเฉ‡ เจ†เจช เจจเจพเจฒ เจœเฉเฉœเฉ€ เจนเฉ‹เจˆ เจนเฉˆเฅค เจ—เฉเจฐเจพเจซ เจฆเฉ‡ เจธเจผเจฌเจฆเจพเจ‚ เจตเจฟเฉฑเจš, เจ‡เฉฑเจ• เจฒเจฟเฉฐเจ• เจ‡เฉฑเจ• เจ•เจฟเจจเจพเจฐเจพ (EDGE) เจนเฉเฉฐเจฆเจพ เจนเฉˆ เจœเฉ‹ เจ•เจฐเจฎเจšเจพเจฐเฉ€เจ†เจ‚ เจฆเฉ‡ เจจเฉ‹เจก (NODE) โ€‹โ€‹เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจฆเจพ เจนเฉˆเฅค

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจšเจฒเฉ‹ เจ‡เฉฑเจ• เจจเจฟเจฏเจฎเจค เจธเจพเจฐเจฃเฉ€ เจฌเจฃเจพเจˆเจ EMP เจ…เจคเฉ‡ เจ‰เจชเจฐเฉ‹เจ•เจค เจšเจฟเฉฑเจคเจฐ เจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ เจ‰เฉฑเจฅเฉ‡ เจฎเฉเฉฑเจฒ เจœเฉ‹เฉœเฉ‹เฅค

CREATE TABLE EMP
(EMPNO INT NOT NULL,
ENAME VARCHAR(20),
JOB VARCHAR(10),
MGR INT,
JOINDATE DATETIME,
SALARY DECIMAL(7, 2),
COMMISIION DECIMAL(7, 2),
DNO INT)
 
INSERT INTO EMP VALUES
(7369, 'SMITH', 'CLERK', 7902, '02-MAR-1970', 8000, NULL, 2),
(7499, 'ALLEN', 'SALESMAN', 7698, '20-MAR-1971', 1600, 3000, 3),
(7521, 'WARD', 'SALESMAN', 7698, '07-FEB-1983', 1250, 5000, 3),
(7566, 'JONES', 'MANAGER', 7839, '02-JUN-1961', 2975, 50000, 2),
(7654, 'MARTIN', 'SALESMAN', 7698, '28-FEB-1971', 1250, 14000, 3),
(7698, 'BLAKE', 'MANAGER', 7839, '01-JAN-1988', 2850, 12000, 3),
(7782, 'CLARK', 'MANAGER', 7839, '09-APR-1971', 2450, 13000, 1),
(7788, 'SCOTT', 'ANALYST', 7566, '09-DEC-1982', 3000, 1200, 2),
(7839, 'KING', 'PRESIDENT', NULL, '17-JUL-1971', 5000, 1456, 1),
(7844, 'TURNER', 'SALESMAN', 7698, '08-AUG-1971', 1500, 0, 3),
(7876, 'ADAMS', 'CLERK', 7788, '12-MAR-1973', 1100, 0, 2),
(7900, 'JAMES', 'CLERK', 7698, '03-NOV-1971', 950, 0, 3),
(7902, 'FORD', 'ANALYST', 7566, '04-MAR-1961', 3000, 0, 2),
(7934, 'MILLER', 'CLERK', 7782, '21-JAN-1972', 1300, 0, 1)

เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ€ เจคเจธเจตเฉ€เจฐ เจ•เจฐเจฎเจšเจพเจฐเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจฆเจฐเจธเจพเจ‰เจ‚เจฆเฉ€ เจนเฉˆ:

  • เจจเจพเจฒ เจ•เจฐเจฎเจšเจพเจฐเฉ€ EMPNO 7369 7902 เจจเฉ‚เฉฐ เจฎเฉฐเจจเจฆเจพ เจนเฉˆ;
  • เจจเจพเจฒ เจ•เจฐเจฎเจšเจพเจฐเฉ€ EMPNO 7902 7566 เจจเฉ‚เฉฐ เจฎเฉฐเจจเจฆเจพ เจนเฉˆ
  • เจจเจพเจฒ เจ•เจฐเจฎเจšเจพเจฐเฉ€ EMPNO 7566 7839 เจจเฉ‚เฉฐ เจฎเฉฐเจจเจฆเจพ เจนเฉˆ

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ
เจ†เจ‰ เจนเฉเจฃ เจ‰เจธเฉ‡ เจกเฉ‡เจŸเจพ เจฆเฉ‡ เจ‡เฉฑเจ• เจ—เฉเจฐเจพเจซ เจชเฉเจฐเจธเจคเฉเจคเฉ€เจ•เจฐเจจ เจจเฉ‚เฉฐ เจตเฉ‡เจ–เฉ€เจเฅค EMPLOYEE เจธเจฟเจฐเจฒเฉ‡เจ– เจตเจฟเฉฑเจš เจ•เจˆ เจ—เฉเจฃ เจนเจจ เจ…เจคเฉ‡ "เจฎเจพเจคเจนเจฟเจค" เจธเจฌเฉฐเจง (EmplReportsTo) เจฆเฉเจ†เจฐเจพ เจ†เจชเจฃเฉ‡ เจ†เจช เจจเจพเจฒ เจœเฉเฉœเจฟเจ† เจนเฉ‹เจ‡เจ† เจนเฉˆเฅค EmplReportsTo เจฐเจฟเจธเจผเจคเฉ‡ เจฆเจพ เจจเจพเจฎ เจนเฉˆเฅค

เจ•เจฟเจจเจพเจฐเฉ‡ เจธเจพเจฐเจฃเฉ€ (EDGE) เจตเจฟเฉฑเจš เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚ เจตเฉ€ เจนเฉ‹ เจธเจ•เจฆเฉ€เจ†เจ‚ เจนเจจเฅค

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ
เจšเจฒเฉ‹ เจ‡เฉฑเจ• เจจเฉ‹เจก เจŸเฉ‡เจฌเจฒ EmpNode เจฌเจฃเจพเจ‰เจ‚เจฆเฉ‡ เจนเจพเจ‚

เจ‡เฉฑเจ• เจจเฉ‹เจก เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจธเฉฐเจŸเฉˆเจ•เจธ เจ•เจพเจซเจผเฉ€ เจธเจงเจพเจฐเจจ เจนเฉˆ: เจธเจฎเฉ€เจ•เจฐเจจ เจฒเจˆ เจŸเฉ‡เจฌเจฒ เจฌเจฃเจพเจ“ เจ…เฉฐเจค เจตเจฟเฉฑเจš เจœเฉ‹เฉœเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ "เจจเฉ‹เจก เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš".

CREATE TABLE dbo.EmpNode(
ID Int Identity(1,1),
EMPNO NUMERIC(4) NOT NULL,
ENAME VARCHAR(10),
MGR NUMERIC(4),
DNO INT
) AS NODE;

เจ†เจ‰ เจนเฉเจฃ เจ‡เฉฑเจ• เจฐเฉˆเจ—เฉ‚เจฒเจฐ เจŸเฉ‡เจฌเจฒ เจคเฉ‹เจ‚ เจกเฉ‡เจŸเจพ เจจเฉ‚เฉฐ เจ—เฉเจฐเจพเจซ เจ‡เฉฑเจ• เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฆเฉ‡ เจนเจพเจ‚เฅค เจ…เจ—เจฒเจพ เจฆเจฐเจœ เจ•เจฐเฉ‹ เจ‡เฉฑเจ• เจฐเจฟเจฒเฉ‡เจธเจผเจจเจฒ เจŸเฉ‡เจฌเจฒ เจคเฉ‹เจ‚ เจกเฉ‡เจŸเจพ เจธเฉฐเจฎเจฟเจฒเจฟเจค เจ•เจฐเจฆเจพ เจนเฉˆ EMP.

INSERT INTO EmpNode(EMPNO,ENAME,MGR,DNO) select empno,ename,MGR,dno from emp

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ
เจ‡เฉฑเจ• เจตเจฟเจธเจผเฉ‡เจธเจผ เจ•เจพเจฒเจฎ เจตเจฟเฉฑเจš เจจเฉ‹เจกเจพเจ‚ เจฆเฉ€ เจธเจพเจฐเจฃเฉ€ เจตเจฟเฉฑเจš $node_id_* เจจเฉ‹เจก เจชเจ›เจพเจฃเจ•เจฐเจคเจพ เจจเฉ‚เฉฐ JSON เจตเจœเฉ‹เจ‚ เจธเจŸเฉ‹เจฐ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจ‡เจธ เจธเจพเจฐเจฃเฉ€ เจฆเฉ‡ เจฌเจพเจ•เฉ€ เจ•เจพเจฒเจฎเจพเจ‚ เจตเจฟเฉฑเจš เจจเฉ‹เจก เจฆเฉ‡ เจ—เฉเจฃ เจนเฉเฉฐเจฆเฉ‡ เจนเจจเฅค

เจ•เจฟเจจเจพเจฐเฉ‡ เจฌเจฃเจพเจ‰เจฃเจพ (EDGE)

เจ‡เฉฑเจ• เจ•เจฟเจจเจพเจฐเฉ‡ เจŸเฉ‡เจฌเจฒ เจฌเจฃเจพเจ‰เจฃเจพ เจ‡เฉฑเจ• เจจเฉ‹เจก เจŸเฉ‡เจฌเจฒ เจฌเจฃเจพเจ‰เจฃ เจฆเฉ‡ เจธเจฎเจพเจจ เจนเฉˆ, เจธเจฟเจตเจพเจ เจ•เฉ€เจตเจฐเจก เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ "EDGE เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš".

CREATE TABLE empReportsTo(Deptno int) AS EDGE

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจ†เจ‰ เจนเฉเจฃ เจ•เจพเจฒเจฎเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจ•เจฐเจฎเจšเจพเจฐเฉ€เจ†เจ‚ เจตเจฟเจšเจ•เจพเจฐ เจ•เจจเฉˆเจ•เจธเจผเจจเจพเจ‚ เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฐเฉ€เจ EMPNO ะธ เจเจฎ.เจœเฉ€.เจ†เจฐ.. เจธเฉฐเจ—เจ เจจเจพเจคเจฎเจ• เจขเจพเจ‚เจšเฉ‡ เจฆเจพ เจšเจฟเฉฑเจคเจฐ เจธเจชเจธเจผเจŸ เจคเฉŒเจฐ 'เจคเฉ‡ เจฆเจฟเจ–เจพเจ‰เจ‚เจฆเจพ เจนเฉˆ เจ•เจฟ เจ•เจฟเจตเฉ‡เจ‚ เจฒเจฟเจ–เจฃเจพ เจนเฉˆ เจฆเจฐเจœ เจ•เจฐเฉ‹.

INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 1),
   	(SELECT $node_id FROM EmpNode WHERE id = 13),20);
INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 2),
   	(SELECT $node_id FROM EmpNode WHERE id = 6),10);
INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 3),
   	(SELECT $node_id FROM EmpNode WHERE id = 6),10)
INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 4),
   	(SELECT $node_id FROM EmpNode WHERE id = 9),30);
INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 5),
   	(SELECT $node_id FROM EmpNode WHERE id = 6),30);
INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 6),
   	(SELECT $node_id FROM EmpNode WHERE id = 9),30);
INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 7),
   	(SELECT $node_id FROM EmpNode WHERE id = 9),30);
INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 8),
   	(SELECT $node_id FROM EmpNode WHERE id = 4),30);
INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 9),
   	(SELECT $node_id FROM EmpNode WHERE id = 9),30);
INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 10),
   	(SELECT $node_id FROM EmpNode WHERE id = 6),30);
INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 11),
   	(SELECT $node_id FROM EmpNode WHERE id = 8),30);
INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 12),
   	(SELECT $node_id FROM EmpNode WHERE id = 6),30);
INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 13),
   	(SELECT $node_id FROM EmpNode WHERE id = 4),30);
INSERT INTO empReportsTo  VALUES ((SELECT $node_id FROM EmpNode WHERE ID = 14),
   	(SELECT $node_id FROM EmpNode WHERE id = 7),30);

เจกเจฟเจซเฉŒเจฒเจŸ เจ•เจฟเจจเจพเจฐเฉ‡ เจฆเฉ€ เจธเจพเจฐเจฃเฉ€ เจตเจฟเฉฑเจš เจคเจฟเฉฐเจจ เจ•เจพเจฒเจฎ เจนเฉเฉฐเจฆเฉ‡ เจนเจจเฅค เจชเจนเจฟเจฒเจพเจ‚, $edge_id โ€” JSON เจซเจพเจฐเจฎ เจตเจฟเฉฑเจš เจ•เจฟเจจเจพเจฐเจพ เจชเจ›เจพเจฃเจ•เจฐเจคเจพเฅค เจฌเจพเจ•เฉ€ เจฆเฉ‹ ($from_id ะธ $to_id) เจจเฉ‹เจกเจพเจ‚ เจตเจฟเจšเจ•เจพเจฐ เจธเจฌเฉฐเจง เจจเฉ‚เฉฐ เจฆเจฐเจธเจพเจ‰เจ‚เจฆเจพ เจนเฉˆเฅค เจ‡เจธเจฆเฉ‡ เจ‡เจฒเจพเจตเจพ, เจ•เจฟเจจเจพเจฐเจฟเจ†เจ‚ เจตเจฟเฉฑเจš เจตเจพเจงเฉ‚ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚ เจนเฉ‹ เจธเจ•เจฆเฉ€เจ†เจ‚ เจนเจจ. เจธเจพเจกเฉ‡ เจ•เฉ‡เจธ เจตเจฟเฉฑเจš เจ‡เจน เจนเฉˆ Deptno.

เจธเจฟเจธเจŸเจฎ เจฆเฉเจฐเจฟเจธเจผ

เจธเจฟเจธเจŸเจฎ เจฆเฉเจฐเจฟเจธเจผ เจตเจฟเฉฑเจš sys.tables เจฆเฉ‹ เจจเจตเฉ‡เจ‚ เจ•เจพเจฒเจฎ เจชเฉเจฐเจ—เจŸ เจนเฉ‹เจ เจนเจจ:

  1. is_edge
  2. is_node

SELECT t.is_edge,t.is_node,*
FROM sys.tables t
WHERE name like 'emp%'

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจเฉฑเจธ.เจเฉฑเจธ.เจเฉฑเจฎ.เจเฉฑเจธ

เจ—เฉเจฐเจพเจซ เจจเจพเจฒ เจธเจฌเฉฐเจงเจค เจตเจธเจคเฉ‚เจ†เจ‚ เจ—เฉเจฐเจพเจซ เจŸเฉ‡เจฌเจฒ เจซเฉ‹เจฒเจกเจฐ เจตเจฟเฉฑเจš เจธเจฅเจฟเจค เจนเจจเฅค เจจเฉ‹เจก เจŸเฉ‡เจฌเจฒ เจ†เจˆเจ•เจจ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจฌเจฟเฉฐเจฆเฉ€ เจจเจพเจฒ เจšเจฟเฉฐเจจเฉเจนเจฟเจค เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ, เจ…เจคเฉ‡ เจ•เจฟเจจเจพเจฐเฉ‡ เจŸเฉ‡เจฌเจฒ เจ†เจˆเจ•เจจ เจจเฉ‚เฉฐ เจฆเฉ‹ เจœเฉเฉœเฉ‡ เจนเฉ‹เจ เจšเฉฑเจ•เจฐเจพเจ‚ (เจฅเฉ‹เฉœเจพ เจœเจฟเจนเจพ เจเจจเจ•เจพเจ‚ เจตเจพเจ‚เจ—) เจจเจพเจฒ เจšเจฟเฉฐเจจเฉเจนเจฟเจค เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆเฅค

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจฎเฉ‡เจฒ เจธเจฎเฉ€เจ•เจฐเจจ

เจธเจฎเฉ€เจ•เจฐเจจ เจฎเฉˆเจš CQL (เจธเจพเจˆเจซเจฐ เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ› เจญเจพเจธเจผเจพ) เจคเฉ‹เจ‚ เจฒเจฟเจ† เจ—เจฟเจ†เฅค เจ‡เจน เจ—เฉเจฐเจพเจซ เจฆเฉ€เจ†เจ‚ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚ เจฆเฉ€ เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ› เจ•เจฐเจจ เจฆเจพ เจ‡เฉฑเจ• เจ•เฉเจธเจผเจฒ เจคเจฐเฉ€เจ•เจพ เจนเฉˆเฅค CQL เจ‡เฉฑเจ• เจธเจฎเฉ€เจ•เจฐเจจ เจจเจพเจฒ เจธเจผเฉเจฐเฉ‚ เจนเฉเฉฐเจฆเจพ เจนเฉˆ เจฎเฉˆเจš.

เจธเฉฐเจŸเฉˆเจ•เจธ

MATCH (<graph_search_pattern>)
 
<graph_search_pattern>::=
    {<node_alias> {
                 	{ <-( <edge_alias> )- }
               	| { -( <edge_alias> )-> }
             	<node_alias>
             	}
 	}
 	[ { AND } { ( <graph_search_pattern> ) } ]
 	[ ,...n ]
 
<node_alias> ::=
    node_table_name | node_alias
 
<edge_alias> ::=
    edge_table_name | edge_alias

เจฎเจฟเจธเจพเจฒ

เจ†เจ“ เจ•เฉเจ เจ‰เจฆเจพเจนเจฐเจฃเจพเจ‚ เจตเฉฑเจฒ เจงเจฟเจ†เจจ เจฆเฉ‡เจˆเจเฅค

เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ€ เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ› เจ‰เจนเจจเจพเจ‚ เจ•เจฐเจฎเจšเจพเจฐเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจฆเจฐเจธเจพเจ‰เจ‚เจฆเฉ€ เจนเฉˆ เจœเจฟเจจเฉเจนเจพเจ‚ เจจเฉ‚เฉฐ เจธเจฎเจฟเจฅ เจ…เจคเฉ‡ เจ‰เจธเจฆเฉ‡ เจฎเฉˆเจจเฉ‡เจœเจฐ เจฐเจฟเจชเฉ‹เจฐเจŸ เจ•เจฐเจฆเฉ‡ เจนเจจเฅค

SELECT
E.EMPNO,E.ENAME,E.MGR,E1.EMPNO,E1.ENAME,E1.MGR
FROM
    empnode e, empnode e1, empReportsTo m
WHERE
    MATCH(e-(m)->e1)
and e.ENAME='SMITH'

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ
เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ€ เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ› เจธเจฎเจฟเจฅ เจฒเจˆ เจฆเฉ‚เจœเฉ‡-เจชเฉฑเจงเจฐ เจฆเฉ‡ เจ•เจฐเจฎเจšเจพเจฐเฉ€เจ†เจ‚ เจ…เจคเฉ‡ เจชเฉเจฐเจฌเฉฐเจงเจ•เจพเจ‚ เจจเฉ‚เฉฐ เจฒเฉฑเจญเจฃ เจฒเจˆ เจนเฉˆเฅค เจœเฉ‡ เจคเฉเจธเฉ€เจ‚ เจตเจพเจ• เจจเฉ‚เฉฐ เจนเจŸเจพ เจฆเจฟเฉฐเจฆเฉ‡ เจนเฉ‹ เจ•เจฟเฉฑเจฅเฉ‡, เจซเจฟเจฐ เจจเจคเฉ€เจœเจพ เจธเจพเจฐเฉ‡ เจ•เจฐเจฎเจšเจพเจฐเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจ•เจฐเฉ‡เจ—เจพเฅค

SELECT
E.EMPNO,E.ENAME,E.MGR,E1.EMPNO,E1.ENAME,E1.MGR,E2.EMPNO,e2.ENAME,E2.MGR
FROM
    empnode e, empnode e1, empReportsTo m ,empReportsTo m1, empnode e2
WHERE
    MATCH(e-(m)->e1-(m1)->e2)
and e.ENAME='SMITH'

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ
เจ…เจคเฉ‡ เจ…เฉฐเจค เจตเจฟเฉฑเจš, เจคเฉ€เจœเฉ‡ เจชเฉฑเจงเจฐ เจฆเฉ‡ เจ•เจฐเจฎเจšเจพเจฐเฉ€เจ†เจ‚ เจ…เจคเฉ‡ เจชเฉเจฐเจฌเฉฐเจงเจ•เจพเจ‚ เจฒเจˆ เจ‡เฉฑเจ• เจฌเฉ‡เจจเจคเฉ€.

SELECT
E.EMPNO,E.ENAME,E.MGR,E1.EMPNO,E1.ENAME,E1.MGR,E2.EMPNO,e2.ENAME,E2.MGR,E3.EMPNO,e3.ENAME,E3.MGR
FROM
    empnode e, empnode e1, empReportsTo m ,empReportsTo m1, empnode e2, empReportsTo M2, empnode e3
WHERE
    MATCH(e-(m)->e1-(m1)->e2-(m2)->e3)
and e.ENAME='SMITH'

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ
เจ†เจ‰ เจนเฉเจฃ เจธเจฎเจฟเจฅ เจฆเฉ‡ เจฌเฉŒเจธ เจฒเฉˆเจฃ เจฒเจˆ เจฆเจฟเจธเจผเจพ เจฌเจฆเจฒเฉ€เจเฅค

SELECT
E.EMPNO,E.ENAME,E.MGR,E1.EMPNO,E1.ENAME,E1.MGR,E2.EMPNO,e2.ENAME,E2.MGR,E3.EMPNO,e3.ENAME,E3.MGR
FROM
    empnode e, empnode e1, empReportsTo m ,empReportsTo m1, empnode e2, empReportsTo M2, empnode e3
WHERE
    MATCH(e<-(m)-e1<-(m1)-e2<-(m2)-e3)

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจธเจฟเฉฑเจŸเจพ

SQL เจธเจฐเจตเจฐ 2017 เจจเฉ‡ เจ†เจชเจฃเฉ‡ เจ†เจช เจจเฉ‚เฉฐ เจตเฉฑเจ–-เจตเฉฑเจ– IT เจ•เจพเจฐเฉ‹เจฌเจพเจฐเฉ€ เจ•เฉฐเจฎเจพเจ‚ เจฒเจˆ เจ‡เฉฑเจ• เจธเฉฐเจชเฉ‚เจฐเจจ เจเจ‚เจŸเจฐเจชเฉเจฐเจพเจˆเจœเจผ เจนเฉฑเจฒ เจตเจœเฉ‹เจ‚ เจธเจฅเจพเจชเจฟเจค เจ•เฉ€เจคเจพ เจนเฉˆเฅค SQL เจ—เฉเจฐเจพเจซเจผ เจฆเจพ เจชเจนเจฟเจฒเจพ เจธเฉฐเจธเจ•เจฐเจฃ เจฌเจนเฉเจค เจตเจงเฉ€เจ† เจนเฉˆเฅค เจ•เฉเจ เจธเฉ€เจฎเจพเจตเจพเจ‚ เจฆเฉ‡ เจฌเจพเจตเจœเฉ‚เจฆ, เจ—เฉเจฐเจพเจซเจพเจ‚ เจฆเฉ€เจ†เจ‚ เจธเจฎเจฐเฉฑเจฅเจพเจตเจพเจ‚ เจฆเฉ€ เจชเฉœเจšเฉ‹เจฒ เจ•เจฐเจจ เจฒเจˆ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจ•เจพเจซเจผเฉ€ เจ•เจพเจฐเจœเจธเจผเฉ€เจฒเจคเจพ เจนเฉˆเฅค

SQL เจ—เฉเจฐเจพเจซเจผ เจ•เจพเจฐเจœเจ•เฉเจธเจผเจฒเจคเจพ SQL เจ‡เฉฐเจœเจฃ เจตเจฟเฉฑเจš เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจเจ•เฉ€เจ•เฉเจฐเจฟเจค เจนเฉˆเฅค เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจœเจฟเจตเฉ‡เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจฆเฉฑเจธเจฟเจ† เจ—เจฟเจ† เจนเฉˆ, SQL เจธเจฐเจตเจฐ 2017 เจฆเฉ€เจ†เจ‚ เจนเฉ‡เจ  เจฒเจฟเจ–เฉ€เจ†เจ‚ เจธเฉ€เจฎเจพเจตเจพเจ‚ เจนเจจ:

เจ•เฉ‹เจˆ เจชเฉ‹เจฒเฉ€เจฎเฉ‹เจฐเจซเจฟเจœเจผเจฎ เจธเจฎเจฐเจฅเจจ เจจเจนเฉ€เจ‚เฅค

  • เจธเจฟเจฐเจซเจผ เจฆเจฟเจธเจผเจพ-เจจเจฟเจฐเจฆเฉ‡เจธเจผ เจ•เจจเฉˆเจ•เจธเจผเจจ เจธเจฎเจฐเจฅเจฟเจค เจนเจจเฅค
  • เจ•เจฟเจจเจพเจฐเฉ‡ เจ…เฉฑเจชเจกเฉ‡เจŸ เจฐเจพเจนเฉ€เจ‚ $from_id เจ…เจคเฉ‡ $to_id เจ•เจพเจฒเจฎเจพเจ‚ เจจเฉ‚เฉฐ เจ…เฉฑเจชเจกเฉ‡เจŸ เจจเจนเฉ€เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡เฅค
  • เจชเจฐเจฟเจตเจฐเจคเจจเจธเจผเฉ€เจฒ เจฌเฉฐเจฆ เจ•เจฐเจจเจพ เจธเจฎเจฐเจฅเจฟเจค เจจเจนเฉ€เจ‚ เจนเจจ, เจชเจฐ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ CTE เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค
  • เจ‡เจจ-เจฎเฉˆเจฎเฉ‹เจฐเฉ€ OLTP เจตเจธเจคเฉ‚เจ†เจ‚ เจฒเจˆ เจธเจฎเจฐเจฅเจจ เจธเฉ€เจฎเจค เจนเฉˆเฅค
  • เจŸเฉˆเจ‚เจชเฉ‹เจฐเจฒ เจŸเฉ‡เจฌเจฒ (เจธเจฟเจธเจŸเจฎ-เจตเจฐเจœเจผเจจเจก เจŸเฉˆเจ‚เจชเฉ‹เจฐเจฒ เจŸเฉ‡เจฌเจฒ), เจ…เจธเจฅเจพเจˆ เจฒเฉ‹เจ•เจฒ เจ…เจคเฉ‡ เจ—เจฒเฉ‹เจฌเจฒ เจŸเฉ‡เจฌเจฒ เจธเจฎเจฐเจฅเจฟเจค เจจเจนเฉ€เจ‚ เจนเจจเฅค
  • เจธเจพเจฐเจฃเฉ€ เจฆเฉ€เจ†เจ‚ เจ•เจฟเจธเจฎเจพเจ‚ เจ…เจคเฉ‡ เจŸเฉ‡เจฌเจฒ เจตเฉ‡เจฐเฉ€เจเจฌเจฒเจพเจ‚ เจจเฉ‚เฉฐ NODE เจœเจพเจ‚ EDGE เจตเจœเฉ‹เจ‚ เจ˜เฉ‹เจธเจผเจฟเจค เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค
  • เจ•เฉเจฐเจพเจธ-เจกเจพเจŸเจพเจฌเฉ‡เจธ เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ›เจพเจ‚ เจธเจฎเจฐเจฅเจฟเจค เจจเจนเฉ€เจ‚ เจนเจจเฅค
  • เจจเจฟเจฏเจฎเจค เจŸเฉ‡เจฌเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจ—เฉเจฐเจพเจซเจผ เจŸเฉ‡เจฌเจฒ เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฃ เจฆเจพ เจ•เฉ‹เจˆ เจธเจฟเฉฑเจงเจพ เจคเจฐเฉ€เจ•เจพ เจœเจพเจ‚ เจตเจฟเจœเจผเจพเจฐเจก เจจเจนเฉ€เจ‚ เจนเฉˆเฅค
  • เจ—เฉเจฐเจพเจซ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจ•เจฐเจจ เจฒเจˆ เจ•เฉ‹เจˆ GUI เจจเจนเฉ€เจ‚ เจนเฉˆ, เจชเจฐ เจคเฉเจธเฉ€เจ‚ เจชเจพเจตเจฐ BI เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

SQL เจธเจฐเจตเจฐ 2017 เจ—เฉเจฐเจพเจซ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจนเฉ‹เจฐ เจชเฉœเฉเจนเฉ‹:

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹