JsonQL Query NoSQL Embedded for Total.js Framework.
npm install jsonql-totaljsThis will make you easier to use NoSQL Embedded in Total.js Framework.
bash
$ npm install jsonql-totaljs
`$3
- Basic Query
`javascript
const JsonQL = require('jsonql-totaljs');
// create new object jsonql
const jsonql = new JsonQL();// build query
var q = [
{
select: {
fields:['user_id','name'],
from:'user',
where:[
['name','==','budi']
]
}
}
];
// with callback
jsonql.query(q).exec(function(err,data) {
console.log(data);
});
// on top promise
jsonql.query(q).promise().then((data) => {
console.log(data);
});
`- Multiple Query in Single Execution
`javascript
var q = [
{
select: {
from:'user',
where:[
['name','==','wawan']
]
}
},
{
select: {
from:'profile',
where:[
['address','==','jakarta']
]
}
}
];
jsonql.query(q).exec(function(err,data) {
console.log(data);
});
`- Join Query
`javascript
var q = [
{
select: {
from:'user',
where:[
['name','==','budi']
],
join:[
{
name:'profile',
from:'user_profile',
on:['id','id'],
first:true
}
]
}
}
];jsonql.query(q).exec(function(err,data) {
console.log(data);
});
`- Join Nested
`javascript
var q = [
{
select: {
from:'user',
where:[
['name','==','budi']
],
join:[
{
name:'profile',
from:'user_profile',
on:['id','id'],
first:true,
join:[
{
name:'additional',
from:'user_other',
on:['id','id'],
first:false
}
]
}
]
}
}
];jsonql.query(q).exec(function(err,data) {
console.log(data);
});
`- Join Nested Manually
`javascript
var q = [
{
select: {
from:'user',
where:[
['name','==','budi']
],
join:[
{
name:'profile',
from:'user_profile',
on:['id','id'],
first:true
},
{
name:'additional',
from:'user_other',
on:['id','id'],
first:false
}
],
nested:['profile','additional']
}
}
];jsonql.query(q).exec(function(err,data) {
console.log(data);
});
`- Insert Single
`javascript
var q = [
{
insert: {
into:'data_crud',
values:[
{
id:'1',
name:'aziz'
}
]
}
}
];
jsonql.query(q).exec(function(err,data) {
console.log(data);
});
`- Insert Multiple
`javascript
var q = [
{
insert: {
into:'data_crud',
values:[
{
id:'1',
name:'aziz'
},
{
id:'2',
name:'tika'
}
]
}
}
];
jsonql.query(q).exec(function(err,data) {
console.log(data);
});
`- Update
`javascript
var q = [
{
update: {
from:'data_crud',
where:[
['name','==','aziz']
],
set:{
id:'1',
name:'aziz alfian'
}
}
}
];
jsonql.query(q).exec(function(err,data) {
console.log(data);
});
`- Modify
`javascript
var q = [
{
modify: {
from:'data_crud',
where:[
['name','==','aziz']
],
set:{
name:'M ABD AZIZ ALFIAN'
}
}
}
];
jsonql.query(q).exec(function(err,data) {
console.log(data);
});
`- Delete
`javascript
var q = [
{
delete: {
from:'data_crud',
where:[
['name','==','aziz']
]
}
}
];
jsonql.query(q).exec(function(err,data) {
console.log(data);
});
`$3
For more detail in usage, please see the documentation in our Wiki.Unit Test
All features has been tested, you also can learn how to use all features from unit test.
`bash
$ npm test
``