Skip to content

Instantly share code, notes, and snippets.

@jexp
Created March 15, 2022 10:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jexp/77b2dbab07e3299534391f00754918b4 to your computer and use it in GitHub Desktop.
Save jexp/77b2dbab07e3299534391f00754918b4 to your computer and use it in GitHub Desktop.
neo4j movies javascript example
/* npm install --save neo4j-driver
node movies.js
export NEO4J_URI='neo4j+s://demo.neo4jlabs.com:7687'
export NEO4J_USER='mUser'
export NEO4J_PASSWORD='s3cr3t'
export NEO4J_DATABASE='movies'
*/
(async() => {
const neo4j = require('neo4j-driver');
const driver = neo4j.driver(process.env['NEO4J_URI'],
neo4j.auth.basic(process.env['NEO4J_USER'],process.env['NEO4J_PASSWORD']),
{});
const query =
`
MATCH (m:Movie {title:$movie})<--(p:Person)-->(o:Movie)
RETURN o.title as title, o.released as year, count(*) as freq
ORDER BY freq DESC LIMIT 5
`;
const params = {"movie": "Apollo 13"};
const session = driver.session({database:process.env['NEO4J_DATABASE']});
try {
const result = await session.readTransaction(tx => tx.run(query, params));
result.records.forEach(r => console.log(r.get('title'),r.get('year').toInt(),r.get('freq').toInt()));
} catch (error) {
console.error(error);
} finally {
session.close();
driver.close();
}
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment